3
我需要刪除字符串中的重複單詞,以便'the (the)'
將變爲'the'
。爲什麼我不能這樣做?在Python中使用正則表達式刪除重複的單詞
re.sub('(.+) \(\1\)', '\1', 'the (the)')
謝謝。
我需要刪除字符串中的重複單詞,以便'the (the)'
將變爲'the'
。爲什麼我不能這樣做?在Python中使用正則表達式刪除重複的單詞
re.sub('(.+) \(\1\)', '\1', 'the (the)')
謝謝。
你需要加倍逃避反向參考:
re.sub('(.+) \(\\1\)', '\\1', 'the (the)')
--> the
或者使用r
prefix:
當「R」或「R」字頭的存在,一個字符一個反斜槓以下包含在沒有改變的字符串中,並且所有反斜槓都保留在字符串中。
re.sub(r'(.+) \(\1\)', r'\1', 'the (the)')
--> the
根據documentation: 'raw字符串表示(R 「文本」)保持正則表達式理智。'
對於'r'來說+1,它防止了太多的反斜槓混亂。 – eumiro 2011-03-22 08:58:57
@eumiro Yup,我只需要找到[相關文檔]的鏈接(http://docs.python.org/library/re.html#raw-string-notation):) – jensgram 2011-03-22 09:00:25