我想排除在上一行有“#-hide-”注釋的行,我可以修改這個腳本:
(?m)^(?<!^#-hide-\r?\n).
而且我也想之間的“匹配文本func\s ”和“ s*\(”(即只匹配“函式名”出來的“FUNC函式名()”)
這適用于:
(?<=func\s ). (?=\s*\()
但是試圖通過做將兩者結合起來是(?m)^(?<!^#-hide-\r?\n)(?<=func\s ). (?=\s*\()行不通的。
全面的:
func include_me():
#-hide-
func disclude_me():
func include_me2():
應該匹配“include_me”和“include_me2”
uj5u.com熱心網友回復:
您可以使用
(?m)(?<=(?<!^#-hide-[\r\n] )func\s ). ?(?=\s*\()
請參閱正則運算式演示。詳情:
(?m)- 行內RegexOptions.Multiline正則運算式選項(?<=(?<!^#-hide-[\r\n] )func\s )- 正向后視,需要以下模式立即匹配到當前位置的左側:(?<!^#-hide-[\r\n] )- 如果有一行開頭 (^)、#-hide-文本然后是一個或多個 CR 或 LF 字符 ([\r\n])則匹配失敗的負向后視func\s-func和一個或多個空格
. ?- LF 字符以外的一個或多個字符,盡可能少(?=\s*\()- 正向前瞻,需要零個或多個空白字符,然后是(當前位置右側的字符。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/389187.html
