私はPython(2.7)でregexライブラリ 're'を使ってフライト番号を検証しています。Python - 関数を使ったREのREGEX問題re.compile + search
私はここで本当に役に立つオンラインエディタを使用して、期待される出力では問題がなかったしました:regexr.com上http://regexr.com/
私の結果は以下のとおりです。http://imgur.com/nB0QDug
私のコードは次のとおりです。
import re
test1 = 'ba116'
###Referencelink: http://academe.co.uk/2014/01/validating-flight-codes/
p = re.compile('/^([a-z][a-z]|[a-z][0-9]|[0-9][a-z])[a-z]?[0-9]{1,4}[a-z]?$/g')
m = p.search(test1) # p.match() to find from start of string only
if m:
print 'It works!: ', m.group() # group(1...n) for capture groups
else:
print 'Did not work'
私は正規表現が1つのマッチを(期待通りに)示すところで、「うまくいきません」という出力をなぜ得るのか分かりません。
私はずっとsimpしました私は正規表現の文字列が無効であるか、re.complile(またはおそらくifループ)を間違って使っているようですが、はのように見えますか?
'ba116'が有効であり、一致する必要があります。
コードが本当にインデントされていますか?それは構文エラーを投げているはずです。 – zwol
'/'を削除して、Pythonで不要にします。それはおそらくその理由は動作していない – sisanared
はい。次のように:http://imgur.com/QqK3HsX - エラーは発生しません。コードが実行され、「終了コード0で終了したプロセス」 –