ホームページ >バックエンド開発 >Python チュートリアル >文字列がすべて小文字かどうかを判断するPython正規表現の例

文字列がすべて小文字かどうかを判断するPython正規表現の例

WBOY
WBOYオリジナル
2016-06-16 08:45:512129ブラウズ

コードをコピー コードは次のとおりです:

# -*-coding: cp936 -*-
import re
s1 = 'adkkdk'
s2 = 'abc123efg'

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 を返します

グループは一致結果をグループ化するために使用されます

コードをコピー コードは次のとおりです:

import re
a = "123abc456"
print re .search( "([0-9]*)([a-z]*)([0-9]*)",a).group(0) #123abc456,全体に戻る
print re.search( "([0- 9]*)([a-z]*)([0-9]*)",a).group(1) #123
print re.search("([0-9]*) )([a-z] *)([0-9]*)",a).group(2) #abc
print re.search("([0-9]*)([a-z]*)( [0-9] *)",a).group(3) #456

1) 正規表現内の 3 セットのか​​っこにより、一致結果が 3 つのグループに分割されます

group() は group(0) と同じであり、正規表現の全体的な結果と一致します

group(1) は最初の括弧一致部分をリストし、group(2) は 2 番目の括弧一致部分をリストし、group(3) は 3 番目の括弧一致部分をリストします。

2) 成功した一致はなく、re.search() は None を返します

3) もちろん、Zheng Ze の表現には括弧がありません。したがって、group(1) は間違いなく間違いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。