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