2016-07-26 54 views
0

所以我有這樣的代碼,從以下形式的字符串中提取的整數:Dir.<int>Python的REG EXP - 匹配號碼

def MatchDir(s): 
     RegExp = re.compile('Dir.([0-9]+)') 
     result = RegExp.match(s) 
     try: 
      return int(result.group(1)) 
     except: 
      return None 

問題是,它也匹配的字符串如Dir.123_test這是不期望。

如何解決這個從Dir.<int>比賽唯一字符串(沒有字符是可以接受的這種特殊形式之前或之後)

+0

'\ b'或'$'以外的其他任何內容。 – dnit13

回答

1

使用^$字符串的開始和結束匹配:

RegExp = re.compile('^Dir.([0-9]+)$') 

根據您的情況,這將不允許除Dir.