J'ai l'expression régulière suivante pour trouver un mot dans le texte et le mettre en surbrillanceQuel est le problème avec cette expression régulière?
Utilisation de la surface du mot à des fins de test.
/((?<=[\W])surface?(?![\w]))|((?<![\w])surface?(?=[\W]))/iu
Il correspond à toutes les occurrences dans le texte suivant.
surface CoP-20-70-0000-04-02_Pre-Run_Tool_Verification_Programming_and_surface_Tare surface_revC.pdf
Mais si je change la première apparition de la surface pour contenir une lettre majuscule, il correspond uniquement à la première occurence .
Surface-CoP-20-70-0000-04-02_Pre-Run_Tool_Verification_Programming_and_surface_Tare surface_revC.pdf
Ou si je mets une lettre majuscule dans certains des autres occurences il correspond à cela.
Surface-CoP-20-70-0000-04-02_Pre-Run_Tool_Verification_Programming_and_Surface_Tare surface_revC.pdf
Pouvez-vous utiliser '\ b' à la place de votre lookahead/lookbehind? – strager
FYI, '/ surface? /' Correspond à '" surfac "'. 'e?' rend le 'e' optionnel. Peut-être que vous voulez '(surface)?', Ou peut-être que vous voulez quelque chose d'autre (ce n'est pas clair). – polygenelubricants