我正在使用別人的文本解析perl代碼,我想進行一些修改。有人可以解釋什麼=〜符號在做什麼?什麼是perl符號=〜
$xmlfile =~ s/value="{(.*?)}"/'value="'.&subst($1).'"'/ge;
編輯:
所以我發現了這個線索,解釋了正則表達式字符串的一部分。
http://www.perlmonks.org/?node_id=24640
我正在使用別人的文本解析perl代碼,我想進行一些修改。有人可以解釋什麼=〜符號在做什麼?什麼是perl符號=〜
$xmlfile =~ s/value="{(.*?)}"/'value="'.&subst($1).'"'/ge;
編輯:
所以我發現了這個線索,解釋了正則表達式字符串的一部分。
http://www.perlmonks.org/?node_id=24640
默認情況下,匹配,替換或音譯作用於$_
;要在另一個變量上使用它們,則使用綁定運算符=~
。在你的情況下,替換將執行的變量是$xmlfile
。
那麼$ xmlfile傳入$ 1?或者任何與s/value =「{(。*?)}」匹配的內容被傳入$ 1? –
'$ 1'是'(。*?)'所捕獲的,所以就是大括號內的內容。 $ xmlfile是它將查找並替換的字符串。 – ysth
根據perlop
:
二進制 「=〜」 結合標量表達式模式匹配。某些操作默認搜索或修改字符串$ _。這個操作符使這種操作在其他一些字符串上工作。正確的參數是搜索模式,替換或音譯。左邊的參數是應該搜索,替換或音譯的內容,而不是默認的$ _。
http://perldoc.perl.org/perlre.html –
你知道其餘的行嗎? – Thilo
提示:您可以在本網站上搜索時髦的語法。使用搜索字符串'[perl]「=〜」',你會得到你的答案。 – Mat