J'ai besoin de logique ET dans regex.
quelque chose comme
jack et james
d'accord avec les chaînes suivantes
'hi jack voici james '
'salut james voici jack '
Vous pouvez faire des vérifications en utilisant lookarounds :
^(?=.*\bjack\b)(?=.*\bjames\b).*$
Cette approche présente l’avantage de pouvoir spécifier facilement plusieurs conditions.
^(?=.*\bjack\b)(?=.*\bjames\b)(?=.*\bjason\b)(?=.*\bjules\b).*$
Essayer:
james.*jack
Si vous voulez les deux en même temps, alors or
les:
james.*jack|jack.*james
Explication de la commande que je vais écrire : -
.
signifie n'importe quel caractère, le chiffre peut entrer à la place de.
*
signifie zéro ou plusieurs occurrences de choses écrites juste avant.
|
signifie 'ou'.
Alors,
james.*jack
chercherait james
, puis n'importe quel nombre de caractères jusqu'à ce que jack
vienne.
Depuis vous voulez soit jack.*james
ou james.*jack
D'oùCommand:
jack.*james|james.*jack
Tu peux faire:
\bjack\b.*\bjames\b|\bjames\b.*\bjack\b
C'est court et doux
(?=.*jack)(?=.*james)