2017-07-18 18 views
0

なぜこれが一致していないと機能していないのか分かりませんか?何かが、それは私が開く角括弧は、問題を引き起こしたことをオンライン正規表現テスター変数のPython正規表現解析

current_name = "bob[0]" 
regex_match = re.compile('%s'%current_name) 
if re.match(regex_match, current_name): 
    print "matched" 
+1

あなたはその文字列から何を突き合わせようとしていますか? '['と ']'の間の値は? – CoryKramer

+2

文字列 'bob [0]'とパターン 'bob [0] \ [[。*]]'を一致させようとしていますか? – janos

+0

バックスラッシュを二重にすることなく正規表現パターンに入れたい場合は、 'r'whatever''という生の文字列にします。それは、次の文字はバックスラッシュのエスケープの一部ではないため、バックスラッシュは失われています。 – jasonharper

答えて

0
current_name = "bob[0]" 
regex_match = re.compile('%s'%current_name.replace('[', r'\[')) 
if re.match(regex_match, current_name): 
    print "matched" 

でそれをテストしていても一致していないような正規表現が間違っている表示されます。これは「一致」を印刷します

関連する問題