Je veux faire correspondre soit @ ou «à» dans une regex. Quelqu'un peut aider? J'ai essayé d'utiliser le? opérateur, me donnant/@? (at)?/mais cela n'a pas fonctionné
Essayer:
/(@|at)/
Cela signifie soit @
ou at
mais pas les deux. Elle est également capturée dans un groupe afin que vous puissiez accéder ultérieurement à la correspondance exacte via une référence arrière si vous le souhaitez.
/(?:@|at)/
la réponse de mmyers effectuera une capture paren; le mien non. Ce que vous devez utiliser dépend de si vous voulez ou non la capture de paren.
si c'est seulement 2 choses que vous voulez capturer, pas besoin de regex
if ( strpos($string,"@")!==FALSE || strpos($string,"at") !==FALSE ) {
# do your thing
}
as-tu essayé
@|at
qui fonctionne pour (dans la version regex .NET) le texte suivant
Qu'en est-il de:
^(\w*(@|at))
Pour: