2017-04-08 12 views
1

ich für Begriffe regex in Atom-Editor Look verwenden möchten wie „Exportdaten als“ oder „Exportvertrag als“. Ziemlich viel „Export ____ als“ ist das Muster so das ist, was ich habe:Spiel regex mit jedem Wort in zwischen zwei bestimmten Wörtern

/^(export)" "[a-z]*" "(as)$/

Aber es funktioniert nicht, wenn ich es in meiner Javascript-Konsole getestet.

+0

https://meta.stackexchange.com/a/5235/289619 – 0m3r

Antwort

1

Ich glaube, Sie bedeutete dies:

/\\bexport [a-z]+ as\\b/ 

dh entfernen Sie die Anführungszeichen und Klammern, und Sie wollen wahrscheinlich mindestens ein Zeichen in der Mitte also + statt * als quantifier und in Wortgrenzen eingewickelt \b .

+0

Das abschließende '$' ist fast sicher nicht, was das Plakat will; das führende '^' wahrscheinlich auch nicht. '\ b'matching eine Wortgrenze macht mehr Sinn. – Mischa

1

Vielleicht sollten Sie versuchen, diese

/(export|EXPORT)\s([a-zA-Z]+)\s([aA][sS])/

Working Demo here

enter image description here

enter image description here

2

Wenn Sie buchstäblich wollen „Exportdaten wie“ und nicht „Export von Daten als“ übereinstimmen, dann sollten Sie /export [a-zA-Z]+ as/ sonst verwenden, sollten Sie / export [a-zA-Z]+ as / verwenden oder wenn Sie wollen auch Strings wie „EXPORT DATA AS übereinstimmen "nur ein i zum Ende hinzufügen, so: /export [a-zA-Z]+ as/i oder wenn Sie Javascript verwenden, wie Sie zu Ihrem Beitrag hinzugefügt, dann würden Sie wollen: var regex = new RegExp("export [a-zA-Z]+ as", "i");

wenn Ihre Frage nicht beantworten, dann sollten Sie vielleicht versuchen, reguläre Ausdrücke verwenden http://regexr.com/ oder lesen Sie die Regeln für Regex auf https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions.

Verwandte Themen