Ich habe diese Zeichenfolge: {16}{2/W}{G/R}{W}
. Ich benutze Javascript regex, um den Klammerinhalt zu extrahieren, aber ich möchte alle nur-Zahl Klammern, wie {16}
ignorieren. Ich möchte jedoch auf Klammern, die eine Zahl UND einen Buchstaben haben, wie {2/W}
übereinstimmen. Bis jetzt habe ich /{([^}0-9]+)}/g
, die {G/R}
und {W}
gerade passt, und schließt {16}
aus, wie ich es will, aber es passt nicht {2/W}
. Gibt es eine Möglichkeit zu sagen: "Zahlen nicht übereinstimmen, wenn nicht Nicht-Nummern folgen?"Regex; Zahlen stimmen nicht überein, es sei denn, gefolgt von '/'
2
A
Antwort
1
können Sie verwenden:
var string = "{16}{2/W}{G/R}{W}";
var result = string.match(/{(\d*[^}\d]+[^}]*)}/g)
console.log(result);
Diese Kontrollen für 3 Arten von Spiel:
- keine Ziffern auf allen (ursprüngliche regex)
- Alle führenden Ziffern, gefolgt von mindestens einer Nicht-Ziffer und dann alles außer dem abschließenden '}'
- keine führende Ziffer, die von einer beliebigen Anzahl von Ziffern folgen, und dann alles andere als dem Schließen '}'
1
var regExample = "{16}{2/W}{G/R}{W}";
var matches = regExample.match(/{([^}\d]+)\}|{(\d+\/\w+)}/g)
console.log(matches);
Verwandte Themen
- 1. Regex Match Teilstring, es sei denn, ein anderer Teilstring passt
- 2. ausblenden div es sei denn, Klasse X
- 3. .htaccess redirect es sei denn in iframe
- 4. Keine Logs erstellt, es sei denn Tests
- 5. Localhost-Protokolle stimmen nicht überein
- 6. String-Arrays stimmen nicht überein
- 7. Warum stimmen diese regulären Ausdrücke nicht überein?
- 8. Ansible-Äquivalent von Puppets Attribut "es sei denn"
- 9. ausblenden Element von Körper, es sei denn bestimmtes Element klicken
- 10. Werte stimmen nicht überein Ebene in R
- 11. AAC und naudio Abtastrate stimmen nicht überein
- 12. Breite und Höhe stimmen nicht überein Bildschirmpixel
- 13. PHP Get Yesterdays Datum, es sei denn, Wochenende
- 14. Für die Liste, es sei denn leer in Python
- 15. rekursive CTE Fehler: Typen stimmen nicht überein
- 16. Python - Pandas Dataframe - Daten stimmen nicht überein
- 17. Speicherung eines monadischen Ausdruck in, es sei denn, oder wenn
- 18. http Umleitungen an https es sei denn, eine Seite
- 19. Mehrere reguläre Ausdrücke stimmen überein
- 20. Verschwommen SVG angezeigt, es sei denn als <object>
- 21. Lua: split-String in Worte, es sei denn
- 22. Scala :: Lazy Wert ist Null, es sei denn gedruckt?
- 23. Disable Submit-Button, es sei denn Urform Daten
- 24. RegEx Muster zwei beliebige Buchstaben gefolgt von sechs Zahlen
- 25. Regex Python, Match alles zwischen A und B, es sei denn C
- 26. parametrisiert Handhabung Routen in Express-jwt mit, es sei denn
- 27. Wie wird die Zeichenkette durch ',' getrennt, es sei denn, ',' ist in Klammern mit Regex?
- 28. Warum stimmen die Hauptkomponentenwerte von Scipy und MATLAB nicht überein?
- 29. facebook insights stimmen nicht mit dem Diagramm überein api
- 30. Golang - warum ist String Element nicht in exec cat enthalten, es sei denn ich sortiere es
Versuchen Sie dies: '/ {\ d * [a-? zA-Z \ /] + \ d *?}/g' –
haben Sie versucht, die '{' und '}' zu umgehen? – Jhecht
@Yuriy Yakym, das nur '{2/W}' und nicht '{W}' oder '{G/R}' entspricht. – IronWaffleMan