Pythonサンプルコード集

正規表現でピリオド(ドット)を指定するには?〜文字列のエスケープについて学ぼう〜

本記事は正規表現でピリオド(ドット)を使う方法について説明する記事です。

具体的には以下の2点について説明します。

・正規表現でピリオドを使う方法
・Pythonでのピリオド(ドット)の正規表現マッチ例

ピリオド(ドット)は正規表現の特殊記号「改行以外の1字」として使われているため、ただ書くだけではピリオドとして扱われません。
ピリオドを文字列としてチェックしたい場合はバックスラッシュでエスケープする必要があります。

正規表現のエスケープまとめ>>Python正規表現の記号エスケープ処理

Pythonの正規表現チェッカー
Pythonの正規表現チェッカーを作成してみました。興味がある方は覗いてみてください。
>>正規表現チェッカー for Python

正規表現でピリオドを使う方法

ピリオドは正規表現の特殊文字の一つであるためそのまま使用するとピリオドのチェックはできません。

「.com」に文字列がマッチするかチェックしたい場合にそのまま「.com」と記述した場合でもマッチはします。

マッチするので一見問題ないように見えますが、「.」は正規表現において「改行以外の1文字ならなんでもOK」という意味なので

「acom」や「あcom」のように入力してもマッチしてしまいます。マッチさせたいのは「.」記号のみなのでこれでは本来やりたいチェックはできていません。
よって以下のようにバックスラッシュでエスケープした記述にする必要があります。

.com

Pythonでのピリオド(ドット)の正規表現マッチ例

Pythonで正規表現をチェックする場合は「re」ライブラリを使用します。
今回は以下の2点について説明します。
・Pythonでのピリオド(ドット)を文字列として使いたい場合の記述例
・Pythonでのピリオド(ドット)を特殊記号として使用する場合の記述例

Pythonでのピリオド(ドット)を文字列として使いたい場合の記述例

Pythonでの記述例は以下の通りです。

◆実行結果
re.Match object; span=(0, 4), match='.com'

Pythonでのピリオド(ドット)を特殊記号として使用する場合の記述例

ピリオドを特殊記号(改行以外の全ての文字)として使う場合の記述例は以下の通りです。

◆実行結果

上記の例ではどんな文字列でもマッチします。

正規表現の特殊記号については「Pythonの正規表現で用いる特殊記号一覧」にまとめています。

以上、ピリオドを正規表現でチェックする方法でした。

Pythonの正規表現チェッカー
Pythonの正規表現チェッカーを作成してみました。
>>正規表現チェッカー for Python

まとめ

ピリオド(ドット)は正規表現の特殊文字として使用されているため、使用する際にはバックスラッシュでエスケープする必要があります。

そのまま書いてしまうと意図しないチェックとなるので注意しましょう。

関連記事>>Python正規表現の特殊記号と記述方法まとめ

正規表現のエスケープまとめ>>Python正規表現の記号エスケープ処理

こちらの記事も読まれています

  • この記事を書いた人
miyabikno

miyabikno

住んでいるところ:神奈川県。 SIer中小企業(C,VBA):8年(うち5年QA)。Web系ベンチャー(PHP,Javascript,Python):2年。フリーランス:2年。現在はブログをメインに活動しています。

-Pythonサンプルコード集
-

Copyright© みやびのどっとぴーわい , 2020 All Rights Reserved Powered by AFFINGER5.