0

変数名がアルファベットのみで始まることを確認し、以下のコードを実行しようとしています。

でもなぜか失敗する

>>> a='1'
>>> if re.search(r"/^[a-zA-Z][a-zA-Z0-9_]*$/",a):
...     print 'pass'
... else:
...     print 'fail'
...
fail
>>>

a-z最初のアルファベットが数字ではなく、次の文字が文字、、、0-9アンダースコアのみであることを確認する必要があります_

4

1 に答える 1

3

これらのスラッシュを正規表現に含めないでください。文字列には、一致させたい実際の正規表現のみが含まれている必要があります。^(Perl では正規表現を区切るためにスラッシュが使用されますが、Python では文字列の引用符がそれを区切ります。)スラッシュの直後の行頭 ( ) と一致しようとするため、正規表現は決して一致しません。

于 2013-05-06T18:36:02.050 に答える