Pythonの正規表現を詳しく解説

Jun 05, 2019 am 11:03 AM
正規表現

Pythonの正規表現を詳しく解説

正規表現の概念

正規表現は文字列操作の論理式であり、事前定義された特定の文字とこれらの特定の文字の組み合わせを使用します。この「ルール文字列」は、文字列のフィルタリング ロジックを表現するために使用されます。

正規表現の構文規則

正規表現の大まかな一致プロセスは次のとおりです:

1. 式を取り出して比較します。テキスト内の文字数

2。すべての文字が一致する場合、一致は成功します。一致しない文字が存在すると、一致は失敗します。

3. 式に量指定子または境界がある場合、プロセスは若干異なります。

以下は、Python の正規表現の一致ルールの一部です

#(\n)## 貪欲でない方法で、前の正規表現で定義された 0 または 1 つのフラグメントと一致します。re { n}## re{ n,} # #(?imx: re)i、m、または x のオプションのフラグを括弧内で使用します##(?-imx: re)##( ?#.. .)#\S は、[^ \f\n\r\t \v と同等の空でない文字に一致します。 ]。 \d##\D#\B\n、\t など

## パターン#############################説明################## ## #^

# 文字列の先頭と一致します

##$

# の末尾と一致します。弦。

.

改行文字を除く一致

# 任意## の文字は、re.DOTALL タグが指定されている場合、改行を含む任意の文字と一致します。

[...] は、個別にリストされた文字のグループを表すために使用されます。 [amk] は、'a'、'm'、または 'k' に一致します。

#[^...]

[] にない文字: [^abc] は、a、b、c 以外の文字と一致します。

#re*

##0 個または複数の一致表現。

1 つ以上の式と一致します。

これ?

##n 個の前の式と完全に一致します。

re{ n, m}

前の正規表現で定義されたフラグメントの n ~ m 倍の貪欲な方法で一致させます

##a| b

##a または b と一致

(re)

##G は括弧内の式と一致し、グループも表します

(?imx)

#正規表現には、i、m、または x の 3 つのオプションのフラグが含まれます。括弧内の領域にのみ影響します。

(?-imx)

正規表現は、i、m、または x のオプションのフラグをオフにします。括弧内の領域にのみ影響します。

#(?:再)

(...) に似ていますが、グループを表しません

括弧内で i、m、または x のオプションのフラグを使用しないでください

#コメント。

#(?= re)

##前方正の区切り文字。 ... で表される、含まれている正規表現が現在の位置と正常に一致する場合は成功し、そうでない場合は失敗します。ただし、含まれている式が試行されると、マッチング エンジンはまったく改善されず、パターンの残りの部分は依然として区切り文字の右側を試行する必要があります。

#(?! 再)

前方負の区切り文字。正の区切り文字の反対。含まれる式が文字列内の現在位置で一致しない場合に成功します。

(?>再)

独立したパターンを照合し、後戻りを排除します。

\w

「[A-Za-z0-9_]」に相当する文字、数字、アンダースコアと一致します。

\W

英数字以外の文字とアンダースコアに一致します。「[^A-Za-z0-9_]」と同等です。

\s

[\t\n\r\f] に相当する任意の空白文字と一致します。

[0-9] に相当する任意の数値と一致します。

は、[^0-9] に相当する任意の非数値に一致します。

\A

文字列の先頭と一致します

##\Z

# 文字列の末尾と一致します。改行がある場合は、改行より前の文字列の末尾のみが一致します。 c

\z

##一致文字列の終了

\G

最後の一致が完了した位置に一致します。

#\b

単語とスペースの間の位置を指す単語境界に一致します。たとえば、「er\b」は「never」の「er」と一致しますが、「動詞」の「er」とは一致しません。

## 単語以外の境界と一致します。 「er\B」は「動詞」の「er」と一致しますが、「never」の「er」とは一致しません。

## 改行文字と一致します。タブ文字と一致します。お待ちください

##\1...\9

n 番目のグループの内容と一致します。

#\10

n 番目のグループの内容が一致する場合は、その内容と一致します。それ以外の場合は、8 進数の文字コードの表現を指します。

#

以上がPythonの正規表現を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP 正規表現の検証: 数値形式の検出 PHP 正規表現の検証: 数値形式の検出 Mar 21, 2024 am 09:45 AM

PHP 正規表現の検証: 数値形式の検出 PHP プログラムを作成する場合、ユーザーが入力したデータを検証する必要がよくあります。一般的な検証の 1 つは、データが指定された数値形式に準拠しているかどうかを確認することです。 PHP では、正規表現を使用してこの種の検証を行うことができます。この記事では、PHP 正規表現を使用して数値形式を検証する方法を紹介し、具体的なコード例を示します。まず、一般的な数値形式の検証要件を見てみましょう。 整数: 0 ~ 9 の数字のみが含まれ、プラスまたはマイナス記号で始めることができ、小数点は含まれません。浮動小数点

正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? 正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? May 31, 2024 pm 01:04 PM

正規表現を使用して Golang で電子メール アドレスを検証するには、次の手順に従います。 regexp.MustCompile を使用して、有効な電子メール アドレス形式と一致する正規表現パターンを作成します。 MatchString 関数を使用して、文字列がパターンと一致するかどうかを確認します。このパターンは、次のようなほとんどの有効な電子メール アドレス形式をカバーします。 ローカル ユーザー名には文字、数字、および特殊文字を含めることができます: !.#$%&'*+/=?^_{|}~-` ドメイン名には少なくとも次の文字が含まれている必要があります。 1 文字の後に文字、数字、またはハイフンを続けます。トップレベル ドメイン (TLD) は 63 文字を超えることはできません。

Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Jun 02, 2024 am 09:00 AM

Go では、正規表現を使用してタイムスタンプを照合できます。ISO8601 タイムスタンプの照合に使用されるような正規表現文字列をコンパイルします。 ^\d{4}-\d{2}-\d{2}T \d{ 2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ 。 regexp.MatchString 関数を使用して、文字列が正規表現と一致するかどうかを確認します。

Go言語の正規表現と文字列処理をマスターする Go言語の正規表現と文字列処理をマスターする Nov 30, 2023 am 09:54 AM

最新のプログラミング言語として、Go 言語は強力な正規表現と文字列処理関数を提供し、開発者が文字列データをより効率的に処理できるようにします。開発者にとって、Go 言語での正規表現と文字列処理を習得することは非常に重要です。この記事では、Go 言語の正規表現の基本概念と使い方、Go 言語を使用して文字列を処理する方法を詳しく紹介します。 1. 正規表現 正規表現は文字列のパターンを記述するためのツールであり、文字列の照合、検索、置換などの操作を簡単に実装できます。

PHP 正規表現: 厳密な一致とあいまいな包含の除外 PHP 正規表現: 厳密な一致とあいまいな包含の除外 Feb 28, 2024 pm 01:03 PM

PHP 正規表現: 完全一致と除外 ファジー包含正規表現は、プログラマがテキストを処理する際に効率的な検索、置換、フィルタリングを実行できる強力なテキスト マッチング ツールです。 PHP では、正規表現は文字列処理やデータ マッチングにも広く使用されています。この記事では、PHP で完全一致を実行し、あいまい包含操作を除外する方法に焦点を当て、具体的なコード例を使用して説明します。完全一致 完全一致とは、バリエーションや余分な単語ではなく、正確な条件を満たす文字列のみと一致することを意味します。

Goで正規表現を使用してパスワードを確認するにはどうすればよいですか? Goで正規表現を使用してパスワードを確認するにはどうすればよいですか? Jun 02, 2024 pm 07:31 PM

Go で正規表現を使用してパスワードを検証する方法は次のとおりです。 パスワードの最小要件 (小文字、大文字、数字、特殊文字を含む少なくとも 8 文字) を満たす正規表現パターンを定義します。 regexp パッケージの MustCompile 関数を使用して正規表現パターンをコンパイルします。 MatchString メソッドを使用して、入力文字列が正規表現パターンと一致するかどうかをテストします。

Golangで正規表現を使用してURLを検出するにはどうすればよいですか? Golangで正規表現を使用してURLを検出するにはどうすればよいですか? May 31, 2024 am 10:32 AM

正規表現を使用して Golang で URL を検出する手順は次のとおりです。 regexp.MustCompile(pattern) を使用して正規表現パターンをコンパイルします。パターンは、プロトコル、ホスト名、ポート (オプション)、パス (オプション)、およびクエリ パラメーター (オプション) と一致する必要があります。 regexp.MatchString(pattern,url) を使用して、URL がパターンと一致するかどうかを検出します。

正規表現のワイルドカードとは何ですか? 正規表現のワイルドカードとは何ですか? Nov 17, 2023 pm 01:40 PM

正規表現のワイルドカードには、「.」、「*」、「+」、「?」、「^」、「$」、「[]」、「[^]」、「[a-z]」、「[A-Z]」が含まれます。 、"[0-9]"、"\d"、"\D"、"\w"、"\W"、"\s&quo

See all articles