Warum der JavaScript-Regex nicht funktioniert
Problem:
Sie stoßen auf ein Null-Ergebnis beim Versuch, eine Liste von Punkten in JavaScript mit einem regulären abzugleichen Ausdruck.
Regex-Ausdruck:
var reg = new RegExp("/\(\s*([0-9.-]+)\s*,\s([0-9.-]+)\s*\)/g");
Lösung:
var reg = /\(\s*([0-9.-]+)\s*,\s([0-9.-]+)\s*\)/g;
Fehler bei der Verwendung von RegExp:
Hinweis:
While Die Verwendung von RegExp ist eine Option. Oft ist es bequemer, Regex-Literale zu verwenden.
Extrahieren Werte:
var result, points = []; while((result = reg.exec(polygons)) !== null) { points.push([+result[1], +result[2]]); }
Dadurch wird ein Array von Arrays erstellt, die die extrahierten Zahlen enthalten. Das unäre Plus ( ) wandelt die Zeichenfolgen in Zahlen um.
Das obige ist der detaillierte Inhalt vonWarum gibt mein JavaScript-Regex beim Abgleichen von Punkten Null zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!