2017-01-07 93 views
0

在Python 2.7,我想以下幾點:子串[整字]檢查使用字符串變量

>>> import re 
>>> text='0.0.0.0/0 172.36.128.214' 
>>> far_end_ip="172.36.128.214" 
>>> 
>>> 
>>> chk=re.search(r"\b172.36.128.214\b",text) 
>>> chk 
<_sre.SRE_Match object at 0x0000000002349578> 
>>> chk=re.search(r"\b172.36.128.21\b",text) 
>>> chk 
>>> chk=re.search(r"\b"+far_end_ip+"\b",text) 
>>> 
>>> chk 
>>> 

問:如何使用變量far_end_ip

回答

1

兩個問題,當我使搜索工作:

  • 你需要寫入字符串的最後一位作爲一個正則表達式字面或轉義反斜線:... + r"\b"
  • 你應該逃避文本點發現:... + re.escape(far_end_ip)

所以:

re.search(r"\b" + re.escape(far_end_ip) + r"\b",text) 

"How to use a variable inside a regular expression?"見。