*(two)/) {print "Igualados \\ n"; } Else {print "No Coincide \\ n"; } Print "\\ $ 1 es:", $ 1, "\\ n"; print "\\ $ 2 es:", $ 2, "\\ n"; La cadena está disponible "Este es uno y que es de dos." Veamos el patrón. El patrón es /(one).*(two)/; que coincidirá con cualquier subcadena en la cadena disponibles que comienza con "uno" y termina con "dos". Recuerde que el punto, seguido por el asterisco representa cualquier conjunto de caracteres. Tenga en cuenta que hay dos grupos en el patrón. Los grupos son (uno) y (dos).
En la cadena disponibles, usted tiene la cadena de sub, "uno" a continuación, después de una cierta distancia, usted tiene la subcadena "dos". El grupo (uno) coincide con la cadena sub "uno" en la cadena disponible. El grupo de "dos" coincide con la cadena sub "dos", en la cadena disponible. Debido a esta coincidencia, el sub cadena "uno" en la cadena disponible se asigna a la variable interna, $ 1; la cadena de sub ", dos" en la cadena disponible se asigna a la variable interna, $ 2. En el código, los dos últimos estados imprimen los valores de estas dos variables.
Si nunca has tenido los grupos (entre paréntesis), coincidente todavía ocurriría pero nada sería asignar a las variables internas, ($ 1 y $ 2). En otras palabras, nada sería capturado. La salida del código es: $ 1 es: un $ 2 es: de dos Puedes tener hasta 9 grupos (pares de paréntesis) en el patrón. Si hay por lo menos 9 cuerdas sub en la cadena disponibles que corresponde a los 9 grupos en el patrón, entonces las cuerdas sub 9 en la cadena disponibles serían asignados a $ 1, $ 2 ... $ 9, respectivamente.
Esa es la primera emparejado iría a $ 1; la segunda a $ 2, el tercero de $ 3 y así sucesivamente. Así es como se recuerde o cadenas de captura de sub en la cadena disponibles después a juego. Nota: si no hay un grupo, entonces no habría nada que recordar (sin asignación ocurrirá); ninguna captura. Usted no necesita tener hasta 9 grupos en el patrón; usted puede t