StrReplace() [v1.1.21+]
지정된 부분문자열을 새 문자열로 교체합니다.
ReplacedStr := StrReplace(Haystack, Needle , ReplaceText, OutputVarCount, Limit)
매개변수
- Haystack
- 그의 내용이 검색되고 교체될 문자열.
- Needle
- 검색할 문자열. 부합은 대소문자를 구분하지 않습니다. 단, StringCaseSense가 켜져 있는 경우는 예외입니다.
- ReplaceText
- Needle는 이 텍스트로 교체됩니다. 생략되거나 비어 있으면, Needle는 빈 문자열로 교체됩니다. In other words, it will be omitted from the return value.
- OutputVarCount
- Specify a output variable in which to store the number of replacements that occurred (0 if none).
- Limit
- 을 생략하면, 기본값은 -1입니다. 기본값은 Haystack에서 발견된 패턴에 부합하면 모두 교체합니다. 그렇지 않으면, 허용할 교체의 최대 횟수를 지정하십시오. Haystack에서 마지막 교체 이후의 오른쪽 부분은 바뀌지 않습니다.
반환 값
이 함수는 Haystack의 내용을 연산으로 교체하여 돌려줍니다. 교체가 필요하지 않으면, Haystack은 그대로 반환됩니다.
내장 변수 A_Space와 A_Tab에 각각 스페이스 문자 하나와 탭 문자 하나가 들어 있습니다. Needle의 앞이나 뒤에서 스페이스와 탭을 따로 검색할 경우에 유용합니다.
StringReplace, RegExReplace(), InStr(), StringCaseSense, SubStr(), Trim(), StrLen(), StringLower, StringUpper
예제
클립보드의 내용에서 모든 CR+LF를 제거합니다.
Clipboard := StrReplace(Clipboard, "`r`n")
모든 스페이스를 플러스로 교체합니다.
NewStr := StrReplace(OldStr, A_Space, "+")
변수 안의 텍스트로부터 모든 빈 줄을 제거합니다.
Loop
{
MyString := StrReplace(MyString, "`r`n`r`n", "`r`n", Count)
if (Count = 0) ; 더 이상 교체가 필요하지 않습니다.
break
}