TEMA about_Regular_Expressions DESCRIPCIÓN BREVE Describe las expresiones regulares de Windows PowerShell. DESCRIPCIÓN DETALLADA Windows PowerShell admite los siguientes caracteres de expresiones regulares. Formato Lógica Ejemplo -------- ----------------------------------- ----------------------- valor Busca caracteres exactos en "libro" -match "br" cualquier parte del valor original. . Busca cualquier carácter individual. "copiar" -match "c....r" [valor] Busca al menos uno de los caracteres "pan" -match "b[aiou]g" entre corchetes. [intervalo] Busca al menos uno de los caracteres "van" -match "v[a-e]n" del intervalo. El uso de un guión (-) permite especificar caracteres adyacentes. [^] Busca cualquier carácter salvo los "coche" -match "[^brt]oche" indicados entre corchetes. ^ Busca los caracteres iniciales. "libro" -match "^li" $ Busca los caracteres finales. "libro" -match "bro$" * Busca todas las instancias del "valla" -match "l*" carácter que le precede. ? Busca una instancia del carácter "valla" -match "v?" que le precede. \ Busca el carácter que sigue como un "$variable" -match "\$variable" carácter marcado con un signo de escape. Windows PowerShell admite las clases de caracteres disponibles en las expresiones regulares de Microsoft .NET Framework. Formato Lógica Ejemplo -------- ------------------------------- ----------------------- \p{nombre} Busca cualquier carácter de la "abcd defg" -match "\p{Ll}+" clase de caracteres especificada por {nombre}. Los nombres admitidos son los grupos y bloques de Unicode como Ll, Nd, Z, IsGreek e IsBoxDrawing. \P{nombre} Busca texto no incluido en los 1234 -match "\P{Ll}+" grupos y los bloques especificados en {nombre}. \w Busca cualquier carácter de "abcd defg" -match "\w+" (detecta abcd) palabra. Equivale a las categorías de caracteres de Unicode [\p{Ll}\p{Lu}\p{Lt}\ p{Lo}\p{Nd}\p{Pc}]. Si se especifica un comportamiento compatible con ECMAScript mediante la opción ECMAScript, \w equivale a [a-zA-Z_0-9]. \W Busca cualquier carácter que no "abcd defg" -match "\W+" (detecta el espacio) sea de palabra. Equivale a las categorías de caracteres Unicode [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\ p{Pc}]. \s Busca cualquier carácter de "abcd defg" -match "\s+" espacio en blanco. Equivale a las categorías de caracteres de Unicode [\f\n\r\t\v\x85\p{Z}]. \S Busca cualquier carácter que no "abcd defg" -match "\S+" sea un espacio en blanco. Equivale a las categorías de caracteres de Unicode [^\f\n\r\t\v\x85\p{Z}]. \d Busca cualquier dígito decimal. 12345 -match "\d+" Equivale a \p{Nd} para Unicode y a [0-9] para un comportamiento que no sea Unicode. \D Busca cualquier carácter que no "abcd" -match "\D+" sea un dígito. Equivale a \P{Nd} para Unicode y a [^0-9] para un comportamiento que no sea Unicode. Windows PowerShell admite los cuantificadores disponibles en las expresiones regulares de .NET Framework. A continuación figuran algunos ejemplos de cuantificadores. Formato Lógica Ejemplo -------- ----------------------------------- ----------------------- * Especifica cero o más "abc" -match "\w*" coincidencias; por ejemplo, \w* o (abc)*. Equivale a {0,}. + Busca instancias repetidas "xyxyxy" -match "xy+" de los caracteres que le preceden. ? Especifica cero o una coincidencia; "abc" -match "\w?" por ejemplo, \w? o (abc)?). Equivale a {0,1}. {n} Especifica exactamente n "abc" -match "\w{2}" coincidencias; por ejemplo, (pizza){2}. {n,} Especifica al menos n coincidencias; "abc" -match "\w{2,}" por ejemplo, (abc){2,}. {n,m} Especifica entre n y m coincidencias. "abc" -match "\w{2,3}" Todas las comparaciones que se muestran en la tabla anterior devuelven true. Observe que el carácter de escape para las expresiones regulares, una barra diagonal inversa (\), es distinto del carácter de escape de Windows PowerShell. El carácter de escape de Windows PowerShell es el carácter de acento grave (`) (ASCII 96). Para obtener más información, vea el tema "Elementos del lenguaje de expresiones regulares" en MSDN (Microsoft Developer Network) Library, en https://go.microsoft.com/fwlink/?LinkId=133231. VEA TAMBIÉN about_Comparison_Operators about_Operators