在惡意模式下使用Emacs時,我遇到了包含\_
的正則表達式的問題,例如,惡意模式和正則表達式中的Emacs
/TAG1\_.\{-}TAG2
/TAG1\_s*TAG2
例如,第一正則表達式中的Vim用於查找TAG1
和TAG2
,包括空格,新行之間的任何文本塊。它將與例如
TAG1
text
more text TAG2
然而,在Emacs邪模式,只要我型\_
,我得到一個Premature end of regular expression
錯誤消息。如預期其他 搜索內容,而\_
,作爲
/TAG1\n*TAG2
工作,所以這個問題特別是\_
。我試圖與邪惡組織設置玩一下,但無濟於事。任何暗示問題可能出現的地方?
P.S .:無論我是否使用GUI,問題都會發生。在Vim中我沒有遇到任何問題
當表達式只是'\ _'時它匹配什麼? – sln
'-'通常不需要轉義。一些自制的引擎使用像這樣的特徵來表示元(例如'\ <'是字邊界的開始) – sln
當表達式只是'/ \ _'它表示'不完整輸入'。如果使用'_'而不逃脫,則按預期將其視爲任何其他字符:例如, '/ TAG1_s * TAG2'找到字符串'TAG1_sTAG2'(但我想查找的是'TAG1 TAG2'!) – summer