2015-01-09 55 views
0

我有這樣的正則表達式麻煩與正則表達式轉換到Python

[^\\]["'&<>] 

爲了配合一些轉義字符。然而,試圖將它轉換成python字符串讓我感到悲傷。我試過

r'[^\\][\"\'&<>]' 

但我最終出現了這個錯誤。

raise error, v # invalid expression 
sre_constants.error: bad group name 

任何幫助,將不勝感激!

+0

爲什麼'r'當你逃脫對一切與'\' ...還是你想和'\'匹配? – 2015-01-09 18:38:20

回答

0

也許你做錯了什麼?

import re 

print(bool(re.match(r'[^\\]["\'&<>]', 'a\"a'))) # True 
print(bool(re.match(r'[^\\]["\'&<>]', 'asd')))  # False 
0

當你的模式包含'"你需要使用3雙引號"""和使用re.escape轉換爲字符串:

>>> print re.escape("""[^\\]["'&<>] """) 
\[\^\\\]\[\"\'\&\<\>\]\