2

私は現在、Pythonのre.match関数を使用しようとしています。次に、re.matchが何かを返す場合(正規表現が文字列に含まれていることを示す)、元の文字列を返すifステートメントがあります。それ以外の場合は、失敗した場合は「failed」という単語を返します。

どうすればこれを行うことができますか?

短い形式:ifステートメントは、逆戻りではない値をどのように受け入れることができますか。

4

2 に答える 2

3
def func(s):
    pattern = "somepattern"
    return s if re.match(pattern, s) else 'failed'

また、返す"failed"ことは悪い考えのように聞こえます。入力がの場合はどうなります"failed"か?のようなものを使用することを検討してくださいNone

于 2012-11-23T21:12:21.253 に答える
1

あなたは真実を使うことができます:

if re.match(r'your_regex', your_string):
    return your_string
else:
    return 'failed'

偽でre.matchはないもの(、、、、、、など)を返す場合は[]{}として評価されます。()0'' NoneFalseTrue

于 2012-11-23T21:12:56.950 に答える