0

問題は、正規表現を使用して条件を実装する方法です。私たちはこれを持っています:

regex = '"Tom":{"c":(.+?),"b":(.+?),"a":(.+?)}|"Tom":{"a":(.+?),"c":(.+?),"b":(.+?)}'

どの正規表現が見つかるかに基づいて、正規表現に対してさまざまなことを行いたいと思います。どのようにこれに遭遇しますか?ifステートメントでこれにアクセスするにはどうすればよいですか?

説明:if regex[0]: print 'Hi' else: print 'Hello'基本的に、どの正規表現が検出されて使用されているかをPythonに尋ねる方法がわかりません。

構文はどうなるのでしょうか?

4

1 に答える 1

2

名前付き正規表現を使用して、必要なことを実行できるはずです http://docs.python.org/2/library/re.html

regex = '(?P<first>"Tom":{"c":(.+?),"b":(.+?),"a":(.+?)})|(?P<second>"Tom":{"a":(.+?),"c":(.+?),"b":(.+?)})'
# Careful as this raises an exception if no match was found
m = re.search( regex, somestring ).groupdict()
if m['first']:
    print 'First'
else:
    print 'Second'
于 2013-03-09T14:28:10.417 に答える