항목 about_Regular_Expressions 간단한 설명 Windows PowerShell의 정규식에 대해 설명합니다. 자세한 설명 Windows PowerShell에서는 다음과 같은 정규식 문자를 지원합니다. 형식 논리 예 ------- ---------------------------------- ----------------------- value 원래 값의 임의 위치에 있는 정확한 "book" -match "oo" 문자와 일치시킵니다. . 임의의 한 문자와 일치시킵니다. "copy" -match "c..y" [value] 대괄호 안에 있는 문자 중 최소한 "big" -match "b[iou]g" 하나와 일치시킵니다. [range] 범위 안에 있는 문자 중 최소한 "and" -match "[a-e]nd" 하나와 일치시킵니다. 하이픈(-)을 사용하면 연속된 문자를 지정할 수 있습니다. [^] 대괄호 안에 있는 문자를 제외한 "and" -match "[^brt]nd" 임의의 문자와 일치시킵니다. ^ 시작 문자와 일치시킵니다. "book" -match "^bo" $ 끝 문자와 일치시킵니다. "book" -match "ok$" * 임의의 선행 문자 인스턴스와 "baggy" -match "g*" 일치시킵니다. ? 하나의 선행 문자 인스턴스와 "baggy" -match "g?" 일치시킵니다. \ 이스케이프 문자 다음에 오는 "Try$" -match "Try\$" 문자와 일치시킵니다. Windows PowerShell에서는 Microsoft .NET Framework 정규식에서 사용할 수 있는 다음과 같은 문자 클래스를 지원합니다. 형식 논리 예 -------- -------------------------------- ----------------------- \p{name} {name}에 지정된 명명된 문자 "abcd defg" -match "\p{Ll}+" 클래스에 있는 임의의 문자와 일치시킵니다. 지원되는 이름은 유니코드 그룹과 블록 범위입니다(예: Ll, Nd, Z, IsGreek 및 IsBoxDrawing). \P{name} {name}에 지정된 그룹과 블록 1234 -match "\P{Ll}+" 범위에 포함되지 않은 텍스트와 일치시킵니다. \w 임의의 단어 문자와 일치시킵니다. "abcd defg" -match "\w+" 유니코드 문자 범주 [\p{Ll}\p{Lu} (this matches abcd) \p{Lt}\p{Lo}\p{Nd}\p{Pc}]에 해당합니다. ECMAScript 옵션으로 ECMAScript와 호환되는 동작을 지정하면 \w는 [a-zA-Z_0-9]와 같습니다. \W 단어 문자가 아닌 임의의 문자와 "abcd defg" -match "\W+" 일치시킵니다. 유니코드 범주 (공백과 일치시킴) [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p {Nd}\p{Pc}]에 해당합니다. \s 임의의 공백 문자와 일치시킵니다. "abcd defg" -match "\s+" 유니코드 문자 범주 [\f\n\r\t\v\x85\p{Z}]에 해당합니다. \S 공백 문자가 아닌 임의의 문자와 "abcd defg" -match "\S+" 일치시킵니다. 유니코드 문자 범위 [^\f\n\r\t\v\x85\p{Z}]에 해당합니다. \d 임의의 10진수와 일치시킵니다. 12345 -match "\d+" 유니코드 문자의 경우 \p{Nd}에 해당하고 유니코드가 아닌 문자의 경우 [0-9]에 해당합니다. \D 10진수가 아닌 임의의 문자와 "abcd" -match "\D+" 일치시킵니다. 유니코드 문자의 경우 \P{Nd}에 해당하고 유니코드가 아닌 문자의 경우 [^0-9]에 해당합니다. Windows PowerShell에서는 .NET Framework 정규식에서 사용할 수 있는 수량자를 지원합니다. 수량자의 몇 가지 예는 다음과 같습니다. 형식 논리 예 -------- --------------------------------- ----------------------- * 0개 이상의 일치하는 항목을 "abc" -match "\w*" 지정합니다(예: \w* 또는 (abc)*). {0,}에 해당합니다. + 반복되는 선행 문자 인스턴스와 "xyxyxy" -match "xy+" 일치시킵니다. ? 0개 또는 1개의 일치하는 항목을 "abc" -match "\w?" 지정합니다(예: \w? 또는 (abc)?). 해당합니다. {n} 정확히 n개의 일치하는 항목을 "abc" -match "\w{2}" 지정합니다(예: (pizza){2}). {n,} 최소한 n개의 일치하는 항목을 "abc" -match "\w{2,}" 지정합니다(예: (abc){2,}). {n,m} n-1개보다 많지만 m개보다 적은 "abc" -match "\w{2,3}" 수의 일치하는 항목을 지정합니다. 위의 표에 나온 비교는 모두 true로 평가됩니다. 정규식의 이스케이프 문자는 Windows PowerShell의 이스케이프 문자와 달리 백슬래시(\)입니다. Windows PowerShell의 이스케이프 문자는 억음 문자(`)(ASCII 96)입니다. 자세한 내용은 MSDN(Microsoft Developer Network) 라이브러리(https://go.microsoft.com/fwlink/?LinkId=133231)에서 "Regular Expression Language Elements(정규식 언어 요소)" 항목을 참조하십시오. 참고 항목 about_Comparison_Operators about_Operators