an = re.search('^[a-z]+$', s1)
if an:
print 's1:', an.group(), 'すべて小文字'
else :
print s1, "すべて小文字ではありません!"
an = re.match('[a-z]+$', s2)
if an:
print 's2:', an.group(), 'すべて小文字'
else:
print s2, "すべて小文字ではありません!"
1. 正規表現は Python の一部ではないため、使用する場合は re モジュールを参照する必要があります
2. 一致形式は、re.search (一致する文字列を含む正規表現) または re.match (一致する文字列を含む正規表現) です。 2 つの違いは、後者はデフォルトで開始文字 (^) で始まることです。したがって、
re.search('^[a-z]+$', s1) は re.match('[a-z]+$', s2)
3 と同等です。一致が失敗した場合は、an = re となります。 search ('^[a-z]+$', s1) は None を返します
グループは一致結果をグループ化するために使用されます
1) 正規表現内の 3 セットのかっこにより、一致結果が 3 つのグループに分割されます
group() は group(0) と同じであり、正規表現の全体的な結果と一致します
group(1) は最初の括弧一致部分をリストし、group(2) は 2 番目の括弧一致部分をリストし、group(3) は 3 番目の括弧一致部分をリストします。
2) 成功した一致はなく、re.search() は None を返します
3) もちろん、Zheng Ze の表現には括弧がありません。したがって、group(1) は間違いなく間違いです。