Hallo Henry,
du machst von Dir aus nichts falsch. Aber ich habe dreifachen Unsinn geredet. Ich bitte um Entschuldigung 😟. Immerhin konnte ich daraus etwas lernen.
(1) Du hattest [\s\S]
verwendet. Ich sagte: das ist das gleiche wie .
Aber [\s\S] war richtig. TIL[1]: Der Punkt matcht „alles, außer Zeilenendezeichen“. Nur [\s\S] matcht wirklich alles.
(2) m Option für die textOnly Regex
Das war nun ein richtiger Hirnfurz von mir. "m" als Option bedeutet, dass ^ und $ Zeilenendezeichen matchen. Man verwendet m, wenn man Zeilengrenzen in einem String per Regex beachten will. Aber gerade das wollen wir nicht. Das m muss weg.
let textOnly = /^[\s\-]*([\s\S]*?)[\s\-]*$/;
(3) Ich schwalle über Gruppen herum und verwende sie dann nicht.
matchAll liefert eine Iteration von Matches. Ein Match ist ein Array. Und wir wollen die erste Gruppe aus der Regex haben. Das wäre an Index 1 des Arrays zu finden. Statt auf commentText musst Du also auf commentText[1] zugreifen.
Guckst Du hier
Ich werde mein Posting von gestern editieren.
Rolf
sumpsi - posui - obstruxi
Today I Learned ↩︎