Você está na página 1de 3

TÓPICO

about_Regular_Expressions

DESCRIÇÃO RESUMIDA
Descreve expressões regulares no Windows PowerShell.

DESCRIÇÃO LONGA
O Windows PowerShell oferece suporte aos caracteres de expressões
regulares a seguir.

Formato Lógica Exemplo


-------- ------------------------------- -----------------------
valor Faz correspondência com "book" -match "oo"
caracteres exatos em qualquer
lugar no valor original.

. Faz correspondência com "copy" -match "c..y"


qualquer caractere único.

[valor] Faz correspondência com pelo "big" -match "b[iou]g"


menos um dos caracteres entre
colchetes.

[intervalo] Faz correspondência com "and" -match "[a-e]nd"


pelo menos um dos caracteres
dentro do intervalo. O uso
de um hífen (-) permite
especificar um caractere
adjacente.

[^] Faz correspondência com "and" -match "[^brt]nd"


qualquer caractere exceto os
que estiverem entre colchetes.

^ Faz correspondência com os "book" -match "^bo"


caracteres iniciais.

$ Faz correspondência com "book" -match "ok$"


caracteres finais.

* Faz correspondência com "baggy" -match "g*"


qualquer instância do
caractere anterior.

? Faz correspondência com uma "baggy" -match "g?"


única instância do caractere
anterior.

\ Faz correspondência com "Try$" -match "Try\$"


o caractere que segue como
um caractere de escape.

O Windows PowerShell oferece suporte às classes de caractere


disponíveis nas expressões regulares do Microsoft .NET Framework.
Formato Lógica Exemplo
-------- ------------------------------- -----------------------
\p{name} Faz correspondência com "abcd defg" -match "\p{Ll}+"
qualquer caractere na classe
de caracteres nomeados
especificada por {nome}.
Os nomes suportados são grupos
de Unicode e intervalos de
blocos, como Ll, Nd, Z,
IsGreek e IsBoxDrawing.

\P{name} Faz correspondência com 1234 -match "\P{Ll}+"


o texto não incluído nos
grupos e intervalos de blocos
especificados no {name}.

\w Faz correspondência com "abcd defg" -match "\w+"


qualquer caractere alfabético. (faz correspondência com abcd)
Equivalente às categorias de
caracteres Unicode [\p {Ll}
\p {Lu} \p {Lt} \p {Eis}
\p {Nd} \p {Pc}].
Se o comportamento compatível
com ECMAScript for especificado
com a opção ECMAScript, \w será
equivalente a [a-zA-Z_0-9].

\W Faz correspondência com "abcd defg" -match "\W+"


qualquer caractere que não seja (faz correspondência com o espaço)
alfabético. Equivalente às
categorias de Unicode [^\p{Ll}
\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}].

\s Faz correspondência com "abcd defg" -match "\s+"


qualquer caractere de espaço
em branco. Equivalente às
categorias de caracteres
Unicode [\f\n\r\t\v\x85\p{Z}].

\S Faz correspondência com "abcd defg" -match "\S+"


qualquer caractere que não
seja de espaço em branco.
Equivalente às categorias
de caracteres Unicode
[^\f\n\r\t\v\x85\p{Z}].

\d Faz correspondência com 12345 -match "\d+"


qualquer dígito decimal.
Equivalente a \p{Nd} para
Unicode e [0-9] para
comportamento não-Unicode.

\D Faz correspondência "abcd" -match "\D+"


a qualquer não-dígito.
Equivalente a \P{Nd} para
Unicode e [^0-9] para ambiente
não-Unicode.
O Windows PowerShell oferece suporte aos quantificador disponíveis em
expressões regulares do .NET Framework. A seguir, estão alguns exemplos
de quantificadores.

Formato Lógica Exemplo


-------- ------------------------------- -----------------------
* Especifica nenhuma ou mais "abc" -match "\w*"
correspondências; por exemplo,
\w* ou (abc)*. Equivalente
a {0,}.

+ Faz correspondência com "xyxyxy" -match "xy+"


instâncias repetidas nos
caracteres anteriores.

? Especifica nenhuma ou uma "abc" -match "\w?"


correspondência; por exemplo,
\w? ou (abc)?. Equivalente
a {0,1}.

{n} Especifica exatamente "abc" -match "\w{2}"


n correspondências;
por exemplo, (pizza){2}.

{n,} Especifica pelo menos "abc" -match "\w{2,}"


n correspondências;
por exemplo, (abc){2,}.

{n,m} Especifica pelo menos n, "abc" -match "\w{2,3}"


mas não mais que m,
correspondências.

Todas as comparações mostradas na tabela anterior são avaliadas como


verdadeiras.

Observe que o caractere de escape usado em expressões regulares,


uma barra invertida(\), é diferente do caractere de escape do Windows
PowerShell. O caractere de escape usado no Windows PowerShell
é o caractere de crase (`) (ASCII 96).

Para obter mais informações, consulte o tópico "Elementos de


Linguagem de Expressões Regulares" na biblioteca MSDN (Microsoft
Developer Network) em http://go.microsoft.com/fwlink/? LinkId=133231.

CONSULTE TAMBÉM
about_Comparison_Operators
about_Operators

Você também pode gostar