수색…
통사론
"(큰 따옴표로 묶인) 문자열"
'리터럴 문자열'
@ "
Here-string
"@@ '
리터럴 here-string
'@
비고
문자열은 텍스트를 나타내는 객체입니다.
기본 문자열 만들기
끈
문자열은 큰 따옴표로 묶어 작성합니다. 큰 따옴표로 묶인 문자열은 변수 및 특수 문자를 평가할 수 있습니다.
$myString = "Some basic text"
$mySecondString = "String with a $variable"
문자열 내에서 큰 따옴표를 사용하려면 이스케이프 문자 backtick ( `
)을 사용하여 이스케이프해야합니다. 작은 따옴표는 큰 따옴표로 묶은 문자열 안에 사용할 수 있습니다.
$myString = "A `"double quoted`" string which also has 'single quotes'."
리터럴 문자열
리터럴 문자열은 변수 및 특수 문자를 평가하지 않는 문자열입니다. 작은 따옴표를 사용하여 만듭니다.
$myLiteralString = 'Simple text including special characters (`n) and a $variable-reference'
리터럴 문자열에서 작은 따옴표를 사용하려면 작은 따옴표 나 리터럴 here-string을 사용하십시오. double qutoes는 리터럴 문자열 내에서 안전하게 사용할 수 있습니다.
$myLiteralString = 'Simple string with ''single quotes'' and "double quotes".'
형식 문자열
$hash = @{ city = 'Berlin' }
$result = 'You should really visit {0}' -f $hash.city
Write-Host $result #prints "You should really visit Berlin"
형식 문자열은 -f
연산자 또는 정적 [String]::Format(string format, args)
.NET 메서드와 함께 사용할 수 있습니다.
여러 줄
PowerShell에서 여러 줄 문자열을 만드는 방법에는 여러 가지가 있습니다.
캐리지 리턴 및 / 또는 뉴 라인에 대한 특수 문자를 수동으로 사용하거나
NewLine
환경 변수를 사용하여 시스템 "줄 바꿈"값을 삽입 할 수 있습니다."Hello`r`nWorld" "Hello{0}World" -f [environment]::NewLine
문자열을 정의하면서 줄 바꿈을 만듭니다 (인용 부호를 닫기 전에).
"Hello World"
here-string 사용. 이것은 가장 일반적인 기술입니다.
@" Hello World "@
Here-string
here-strings는 여러 줄 문자열을 만들 때 매우 유용합니다. 다른 멀티 라인 문자열과 비교할 때 가장 큰 이점 중 하나는 백틱을 사용하여 이스케이프하지 않고 따옴표를 사용할 수 있다는 것입니다.
Here-string
여기에서 문자열은 @"
시작하고 줄 바꿈으로 끝나고 "@
끝납니다 ( "@
는 줄의 첫 번째 문자 여야하며 공백 / 탭이 아니어야합니다 ).
@"
Simple
Multiline string
with "quotes"
"@
리터럴 here-string
보통의 리터럴 문자열처럼 표현식을 확장하지 않으려면 작은 따옴표를 사용하여 literal here-string을 만들 수도 있습니다.
@'
The following line won't be expanded
$(Get-Date)
because this is a literal here-string
'@
문자열 연결하기
문자열에서 변수 사용하기
큰 따옴표로 묶은 문자열 안에 변수를 사용하여 문자열을 연결할 수 있습니다. 속성과 함께 작동하지 않습니다.
$string1 = "Power"
$string2 = "Shell"
"Greetings from $string1$string2"
+
연산자 사용
+
연산자를 사용하여 문자열을 조인 할 수도 있습니다.
$string1 = "Greetings from"
$string2 = "PowerShell"
$string1 + " " + $string2
이는 객체의 속성에도 적용됩니다.
"The title of this console is '" + $host.Name + "'"
하위 표현식 사용
$()
서브 표현식의 결과 / 결과는 문자열에서 사용할 수 있습니다. 이것은 객체의 속성에 액세스하거나 복잡한 표현식을 수행 할 때 유용합니다. 하위 표현식에는 세미콜론으로 구분 된 여러 개의 명령문이 포함될 수 있습니다 ;
"Tomorrow is $((Get-Date).AddDays(1).DayOfWeek)"
특수 문자
이중 인용 된 문자열 내에서 사용하는 경우, 이스케이프 문자 (역 따옴표는 `
) 특수 문자를 reperesents.
`0 #Null
`a #Alert/Beep
`b #Backspace
`f #Form feed (used for printer output)
`n #New line
`r #Carriage return
`t #Horizontal tab
`v #Vertical tab (used for printer output)
예:
> "This`tuses`ttab`r`nThis is on a second line"
This uses tab
This is on a second line
특별한 의미로 특수 문자를 이스케이프 할 수도 있습니다.
`# #Comment-operator
`$ #Variable operator
`` #Escape character
`' #Single quote
`" #Double quote