문자열이 많은 au3 파일 (자동 스크립트)이 있습니다. 예를복잡한 정규 표현식 대체, 문자열을 함수 호출
;This is autoit
$string1 = "This is a test string" & @crlf & "Wow, autoit syntax!"
$string2 = "This string has a var. Var1=" & $var1
$wow = random_function("Another string") & "this is getting complex"
magic_function("var1=" & $var1 & @crlf & "other var=" & $var2)
$multivar = "This string has 2 vars: var1=" & $var1 & " var2=" $var2"
이 들어 내가 가진 텍스트의 종류 내가 함수 호출로 모든 문자열을 대체 할 싶어요. 예를 들어, 위의 스크립트는
;This is autoit
$string1 = get_string(1) & @crlf & get_string(2)
$string2 = get_string(3,$var1)
$wow = random_function(get_string(4)) & get_string(5)
magic_function(get_string(6,$var1) & @crlf & get_string(7,$var2))
$multivar = get_string(8,$var1,$var2)
또는
;This is autoit
$string1 = get_string(1,@crlf)
$string2 = get_string(3,$var1)
$wow = random_function(get_string(4)) & get_string(5)
magic_function(get_string(6,$var1,@crlf,$var2))
$multivar = get_string(8,$var1,$var2)
이 모두 나에게 좋은 될 것입니다. 이 복잡한 정규 표현식 교체 또는 그 중 일부 연결 생각하고 내 정규식 능력이 꽤 실망 스럽다 이후, 나는 당신에게 어떤 도움이나 아이디어를 요청합니다.
나는 스크립트에서 많은 부분을 대체 해선 안되는 코드 관련 문자열을 알고있다. 난 그냥 정규식 부분이 필요해.
필자는 php를 사용하여 replace-strings 스크립트를 작성하는 것에 대해 생각했습니다.
//This is php
$file = "test.au3"
$lines = file($file)
foreach($lines as $index => $line){
$newLine = preg_replace(/*magic regex here*/);
}
으로 스크립트를 시작하므로 여러 줄 문자열이 없기 때문에 모든 단일 줄에서 대체 할 수 있습니다. 도움을 주셔서 감사합니다.