Hoe de eerste en laatste 'a' in 'axaya' matchen met regex?

ik kan zo schrijven als ik 'a' niet achter y wil plaatsen: a (?! [\ w \ W] * y); maar nu wil ik 'a' niet evenaren tussen 'x' en 'y' lijkt het erop dat (?! x) a ook xa kan evenaren.

0
het kan bijvoorbeeld overeenkomen met a xay a
toegevoegd de auteur final, de bron
ik wil '' wissen, dus ik wil de ruimte matchen tussen x en y
toegevoegd de auteur final, de bron
Geef input/output-cases (voor zowel verwachte als huidige pogingen) ... de vraag is moeilijk te begrijpen.
toegevoegd de auteur user166390, de bron

1 antwoord

Als u op zoek bent naar de eerste en laatste 'a' in één woord.

 /((^a)[\w]+(a$))/gm

Voorbeelden:

axaya - Matches
abcd
abcda - Matches
xyza
axyasxaxaxa - Matches
1
toegevoegd
ik wil 'a' niet matchen tussen x en y, er zijn bijvoorbeeld enkele woorden'asssssaasssxaasaayaaa 'het komt overeen met het woord' AsssssAAsssxaasaayAAA '
toegevoegd de auteur final, de bron
@ finale: wat bedoel je met match hier? Wil je uitpakken die karakters? Wilt u alleen weten of de tekenreeks a 's niet tussen x en y bevat? Uw vraag is niet echt duidelijk.
toegevoegd de auteur Felix Kling, de bron