Ich versuche, einen Teil eines Add-ons für Google Text & Tabellen zu schreiben, das Zeilenumbrüche in ausgewähltem Text mit replaceText
ausschließt. Das offensichtliche text.replaceText("\n","");
gibt den Fehler Invalid argument: searchPattern
. Ich bekomme den gleichen Fehler mit text.replaceText("\r","");
. Die folgenden Versuche machen nichts: text.replaceText("/\n/","");
, text.replaceText("/\r/","");
. Ich weiß nicht, warum Google App Script die Erkennung von Zeilenumbrüchen in Regex nicht zulässt.Eliminieren Sie Zeilenumbrüche in Google App-Skript mit Regex
Ich bin mir bewusst, dass es ein Add-on gibt, das dies bereits tut, aber ich möchte diese Funktion in mein Add-on integrieren.
Dieser Fehler tritt auch bei der Grund
DocumentApp.getActiveDocument().getBody().textReplace("\n","");
Meine volle Funktion:
function removeLineBreaks() {
var selection = DocumentApp.getActiveDocument().getSelection();
if (selection) {
var elements = selection.getRangeElements();
for (var i = 0; i < elements.length; i++) {
var element = elements[i];
// Only deal with text elements
if (element.getElement().editAsText) {
var text = element.getElement().editAsText();
if (element.isPartial()) {
text.replaceText("\n","");
}
// Deal with fully selected text
else {
text.replaceText("\n","");
}
}
}
}
// No text selected
else {
DocumentApp.getUi().alert('No text selected. Please select some text and try again.');
}
}
Sind diese Zeilenumbrüche nicht Wagenrücklauf? Versuchen Sie 'text.replaceText (" \ r "," ");' oder 'text.replaceText (" [\ r \ n] + "," ");' –
Siehe oben "Ich bekomme den gleichen Fehler mit text.replaceText ("\ r", "") ". [\ n] oder [\ r] tun Sie einfach nichts. –
Haben Sie etwas wie 'DocumntApp.getActiveDocument(). GetBody(). ReplaceText (" \ n "," ");'? –