Para hacer coincidir cualquier palabra completa, usaría el patrón (\w+)
Suponiendo que está usando PCRE o algo similar:
Captura de pantalla anterior tomada de este ejemplo en vivo: http://regex101.com/r/cU5lC2
Hacer coincidir cualquier palabra completa en la línea de comandos con (\w+)
Voy a estar utilizando el shell interactivo phpsh en Ubuntu 12.10 para demostrar el motor PCRE expresión regular a través del método conocido como preg_match
Inicie phpsh, ponga algo de contenido en una variable, coincida con la palabra.
el@apollo:~/foo$ phpsh
php> $content1 = 'badger'
php> $content2 = '1234'
php> $content3 = '$%^&'
php> echo preg_match('(\w+)', $content1);
1
php> echo preg_match('(\w+)', $content2);
1
php> echo preg_match('(\w+)', $content3);
0
El método utiliza el motor preg_match PCRE dentro del lenguaje PHP para analizar las variables: $content1
, $content2
y $content3
con el (\w)+
patrón.
$ content1 y $ content2 contienen al menos una palabra, $ content3 no.
Haga coincidir un número de palabras literales en la línea de comandos con (dart|fart)
el@apollo:~/foo$ phpsh
php> $gun1 = 'dart gun';
php> $gun2 = 'fart gun';
php> $gun3 = 'farty gun';
php> $gun4 = 'unicorn gun';
php> echo preg_match('(dart|fart)', $gun1);
1
php> echo preg_match('(dart|fart)', $gun2);
1
php> echo preg_match('(dart|fart)', $gun3);
1
php> echo preg_match('(dart|fart)', $gun4);
0
Las variables gun1 y gun2 contienen la cadena dart o fart. gun4 no lo hace. Sin embargo, puede ser un problema buscar fart
coincidencias de palabras farty
. Para solucionar este problema, aplique límites de palabras en expresiones regulares.
Haga coincidir palabras literales en la línea de comandos con límites de palabras.
el@apollo:~/foo$ phpsh
php> $gun1 = 'dart gun';
php> $gun2 = 'fart gun';
php> $gun3 = 'farty gun';
php> $gun4 = 'unicorn gun';
php> echo preg_match('(\bdart\b|\bfart\b)', $gun1);
1
php> echo preg_match('(\bdart\b|\bfart\b)', $gun2);
1
php> echo preg_match('(\bdart\b|\bfart\b)', $gun3);
0
php> echo preg_match('(\bdart\b|\bfart\b)', $gun4);
0
Por lo que es lo mismo que el ejemplo anterior, excepto que la palabra fart
con un \b
límite de palabra no existe en el contenido: farty
.