Je veux trouver le mot immédiatement après un mot particulier dans une chaîne à l'aide d'une regex. Par exemple, si le mot est "mon", p>
"Ceci est ma prière" - prière p>
"C'est mon livre ()" - Book P>
est-il possible d'utiliser regex? p>
6 Réponses :
pour mon code>, utilisez la REGEX suivante: my (\w+)
Vous pouvez utiliser
my\s+\b(\w+)\b
La regex serait \ p {l} + code> est une séquence de lettres. Le \ p {l} code> est un point de code Unicode avec la propriété " Lettre ", donc il correspond à une lettre dans n'importe quelle langue. P> (? <= \ Bmy \ s +) code> est une affirmation de lookbehind, qui garantit que le mot" mon "est avant < / p> p>
+1; Ajout d'une limite de mot pour ne pas correspondre à surplus armée code> :)
si ceci renvoie une chaîne vide s'il n'y a pas de correspondance. P> P> mon code> est pris à partir de l'entrée de l'utilisateur,
"Ceci est ma prière"
.* (my )(\D*)( ).*
Vous utilisez de nombreux groupes inutiles, d'accord, mais pourquoi utilisez-vous \ d code>, qui est "pas un chiffre"? Quels ont des chiffres à faire avec des mots assortis?
Utilisez un look à venir Regex: