2015-04-03 113 views
0

我有一個需要修改的文本文檔。大部分單詞由「 - 」(減號)字符分隔。自然在文檔中(減號)字符 -如何排除正則表達式上的某個單詞

(\w+)\-(\w+)

這種模式工作完全正常,但有一個詞「」:

因此,在崇高的文本,我想這種模式。 (如:FOO吧)

所以我需要找出所有減去分隔的話,但exludes「富巴」的模式

很抱歉,如果之前這個問題問,但我無法找到我所需要

答案
+0

嘗試給發佈第一個工作答案的用戶提供第一優先選擇。 – 2015-04-03 06:52:25

回答

1

可以使用負前瞻(可選i開關,匹配不區分大小寫的方式的話):

(?i)(?!\bfoo\-bar\b)\b(\w+)-(\w+)\b 

記住這將只與非重疊的匹配工作。

見例如:

enter image description here

如果你要替換的情況下,空間連字符我的截圖提供的,您可以使用(?!\bfoo\-bar\b)\b(\w+)\-(?=\w)搜索正則表達式,並與$1替換(結果:go there now):

enter image description here

+0

還有什麼是我想排除的另一個詞? – Valour 2015-04-03 06:37:03

+1

將它們添加到圓括號中:'(?!\ b(?:foo-bar | new-word | another-word)\ b)' – 2015-04-03 06:40:12