Ich bekomme meine Regex von einer API, und sie beginnt oft mit^und endet mit $ (zum Beispiel ^-?[0-9]+$
). Wenn Sie die Regex als String in ng-pattern setzen, erhalten Sie eine Lexer Error
, da eckle standardmäßig die Strings^und $ hinzufügt.
- If the expression evaluates to a RegExp object, then this is used directly.
- If the expression evaluates to a string, then it will be converted to a RegExp after wrapping it in^and $ characters. For instance, "abc" will be converted to new RegExp('^abc$').
Sehr gut, dann wollen wir versuchen, die Regex Zeichenfolge in ein Regex-Objekt zu konvertieren, dachte ich. Also habe ich versucht, dies:
json.data.data[i].validateRegex = new RegExp(json.data.data[i].validateRegex, "g");
Aber in einem anderen Fehler führt:
Error: ngPattern:noregexp
Expected Regular Expression
Expected {} to be a RegExp but was {}.
Wie kann ich meine Regex mit ng-Muster zu arbeiten? Vorzugsweise ohne die^und $ aus der Regex zu entfernen.
Kannst du irgendeine Geige/PLNKR hinzufügen? Es wird hilfreich sein, Ihre Frage zu beantworten. –