AutoHotKey(오토핫키) 설명서 StringGetPos
StringGetPos
문자열중의 특정의 문자열의 위치를 검색한다
StringGetPos, OutputVar, InputVar, SearchText [, L#|R# , Offset]
Parameters
인수명 | 설명 |
---|---|
OutputVar | 검색된 위치를 격납하는 변수명. 문자열의 처음은 「0」로서 센다. 발견되지 않았던 경우는, 「-1」(이)가 된다. |
InputVar | 문자를 검색하는 대상의 문자열이 격납된 변수명. |
SearchText | 검색하는 문자열. StringCaseSense그리고 설정하지 않는 한, 대문자 소문자의 차이는 무시된다. |
L#|R# |
SearchText에 매치하는 부분이 다수 있는 경우, 몇번째의 출현 위치를 취득하는지를 지정할 수 있다. 생략시는, 제일 최초의 출현 위치를 취득한다. 「1」(이)나 「R」(을)를 지정하면, 제일 마지막 출현 위치를 취득할 수 있다. 「L2」(와)과 같이 「L」에 이어 숫자를 지정하면, 최초부터 지정 번째의 출현 위치를 취득할 수 있다. 「R3」(와)과 같이 「R」에 이어 숫자를 지정하면, 최후로부터 지정 번째의 출현 위치를 취득할 수 있다. SearhText의 출현수가L(이)나R에 이어 지정한 수보다 적었던 경우, 발견되지 않았다 보여OutputVar(은)는 「-1」(이)가 된다. |
Offset |
검색시, 최초의Offset문자분만큼 무시해 검색을 시작한다. 생략시는 「0」. L#|R#그리고 최후로부터 검색하는 지정이 되어 있는 경우, 마지막Offset문자분을 날려 검색을 시작한다. |
ErrorLevel
SearchText하지만 발견되지 않았던 경우는 「1」, 발견되었을 경우는 「0」
Remarks
StringMid(와)과 달라, 문자열의 처음은 「0」문자눈으로서 처리된다.
L#|R#(이)나Offset옵션으로의 지정에 관계없이, 반드시InputVar의 선두로부터의 위치가 취득된다.
파일의 패스를 분해하고 싶은 경우,SplitPath(을)를 사용하는 편이 편리.
SearchText(이)나ReplaceText에 반각 스페이스나Tab문자를 지정하고 싶은 경우, 편입 변수%A_Space%(이)나%A_Tab%(을)를 사용한다.
Related
IfInString, StringCaseSense, SplitPath, StringLeft, StringRight, StringMid, StringTrimLeft, StringTrimRight, StringLen, StringLower, StringUpper, StringReplace, if var is type
Examples
Haystack = abcdefghijklmnopqrs Needle = def StringGetPos, pos, Haystack, %Needle% if pos >= 0 MsgBox, The string was found at position %pos%.
; Example #2: ; Divides up the full path name of a file into components. ; Note that it would be much easier to use StringSplit or a ; parsing loop to do this, so the below is just for illustration. FileSelectFile, file, , , Pick a filename in a deeply nested folder: if file <> { StringLen, pos_prev, file pos_prev += 1 ; Adjust to be the position after the last char. Loop { ; Search from the right for the Nth occurrence: StringGetPos, pos, file, \, R%A_Index% if ErrorLevel <> 0 break length := pos_prev - pos - 1 pos_prev := pos pos += 2 ; Adjust for use with StringMid. StringMid, path_component, file, %pos%, %length% MsgBox Path component #%a_index% (from the right) is:`n%path_component% } }
'AutoHotKey > Commands' 카테고리의 다른 글
AutoHotKey(오토핫키) 설명서 StringLen (0) | 2014.08.14 |
---|---|
AutoHotKey(오토핫키) 설명서 StringLeft / StringRight (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 StringCaseSense (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 StatusBarWait (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 StatusBarGetText (0) | 2014.08.14 |