我是相當新的正則表達式,因此這可能是你見過在計算器上:-)搜索和替換冒號(:)雙引號之間使用正則表達式
我有一個大的JSON文件與簡單的問題文字是這樣的:
{..., "text": "BLAH BLAH", ...}
文本可能包含任何特殊字符,也字符,如\"
,我明白的可以看作是正則表達式中的轉義字符。我試圖找到並替換單個字符冒號:
與代字號~
內的部分跟着"text"
最好在Notepad ++。任何幫助將不勝感激。
我是相當新的正則表達式,因此這可能是你見過在計算器上:-)搜索和替換冒號(:)雙引號之間使用正則表達式
我有一個大的JSON文件與簡單的問題文字是這樣的:
{..., "text": "BLAH BLAH", ...}
文本可能包含任何特殊字符,也字符,如\"
,我明白的可以看作是正則表達式中的轉義字符。我試圖找到並替換單個字符冒號:
與代字號~
內的部分跟着"text"
最好在Notepad ++。任何幫助將不勝感激。
這個正則表達式將找到名爲text
的字段值中的所有:
,並用~
替換字符。請注意,使用Notepad ++ v5正則表達式存在問題。我在這裏演示在記事本測試++ v6.3.3
正則表達式:與("text":\s"[^"]*?):
替換:$1~
輸入字符串:{"not text": "12:34", "text": "BLAH:BLAH", "Never get a": ":oskupee"}
這裏是我做過什麼(所有幫助@Mike感謝,但我不得不作出許多修改。這就是爲什麼我回答我的問題,以便其他用戶可以得到完整的答案)
\"text\": \".*? : .*?\",
查找和替換\1~\2
全部更換:
與~
在記事本++中給定文本'{「text」:「BLAH:BLAH」,「Never get a」:「:oskupee」,「not text」:「12:34」},這個表達式產生'{〜永遠不會得到一個「:」:oskupee「,」不是文本「:」12:34「}' –
也在記事本++給定文本'{」文本「:」BLAH:BLAH「,」永遠不會得到「:」:oskupee「 ,「not text」:「12:34」}',這個表達式產生'{〜「not text」:「12:34」}' –
你可以這樣做:
find: ("(?:[^"]+|(?<=\\)")*")\s*:
replace: $1~
這個想法是捕獲雙引號內的內容,將其放入替換內容中。
我使用lookbehind來允許雙引號內的轉義雙引號。
這是否適用於''text「:」我有一個:「說」關於某事,在下午6點很重要「' –
對不起,我們能做的最好的表達就是這樣的'(」text「:\ s」(?:(?!「} |」,\ s 「\ w +」:\ s「)。)*):'你需要多次運行,直到記事本報告沒有更多的更改。不幸的是,這種表達方式超出了記事本的範圍,因爲它不支持表達式中的某些內容。一般來說,這個表達式可以工作http://regexr.com?35b69。 –