目次
モジュールです。
结论

Python の正規表現

Aug 27, 2023 am 10:05 AM
Pythonの正規表現

Python の正規表現

文書内の特定のテキストを 見つけたり、テキスト が次のような特定の形式に準拠していることを確認したりするための鍵について疑問に思ったことはありますか?電子メール アドレスとは何ですか?また、その他の同様の操作について教えてください。 このタイプの操作の鍵となるのは正規表現 (regex) です。正規表現の定義をいくつか見てみましょう。 Wikipedia では、正規表現は次のように定義されています:

検索パターンの文字列を定義します。主にパターンマッチングや文字列との文字列マッチング、つまり「検索と置換」などの操作に使用されます。この概念は 1950 年代に登場し、アメリカの数学者 Stephen Kleene が正規言語の記述を形式化し、Unix テキスト処理ユーティリティ ed (エディタ) および grep (フィルタ) で一般的に使用されるようになりました。

正規表現.info のもう 1 つの適切な定義は次のとおりです。

正規表現 (regex または略して regexp) は、検索パターンを記述するために使用される特別なテキスト文字列です。正規表現は、強化されたワイルドカードと考えることができます。ファイル マネージャーですべてのテキスト ファイルを検索するための *.txt などのワイルドカード表記に精通しているかもしれません。同等の正規表現は .*\.txt$

です。
正規表現の概念はまだ少し曖昧に聞こえるかもしれません。この概念をよりよく理解するために、正規表現の例をいくつか見てみましょう。

正規表現の例

このセクションでは、この概念をさらに理解するのに役立つ正規表現の例をいくつか示します。

次の正規表現があるとします:

リーリー

これは、

abder

という単語のみと一致するように指示しているだけです。

この正規表現はどうでしょうか? リーリー

この正規表現は次のように解釈できます。最初の文字が

a

、最後の文字が

t、これらの文字の間が n# であるテキスト パターンを検索します。 ## または r。したがって、一致する単語は antart です。 それでは、ちょっとしたクイズを出しましょう。 ca で始まり、次の文字

tbr

の 1 つまたはすべてで終わる正規表現を作成するにはどうすればよいですか?はい、この正規表現は次のように記述できます: リーリー サーカムフレックス記号 ^ で始まる正規表現がある場合は、

^

の後に記載されている文字列で始まる文字列と一致することを意味します。したがって、次の正規表現がある場合、This で始まる文字列と一致します。 リーリー したがって、次の文字列: リーリー 正規表現

/^This/

に基づいて、次の文字列が一致します:

リーリー

で終わる文字列を特定の文字列 と一致させたい場合はどうすればよいでしょうか?この例では、ドル記号

$

を使用します。以下に例を示します: リーリー したがって、上記の文字列 (3 行) では、この正規表現は次のパターンと一致するために使用されます: リーリー それでは、この正規表現についてどう思いますか?

リーリー

一見すると複雑に見えるかもしれませんが、少しずつ見ていきましょう。

サーカムフレックス

^

とは何かを学習しました。これは、特定の文字列で始まる文字列と一致することを意味します。

[A-Z]

は大文字を表します。したがって、正規表現のこの部分 ^[A-Z] を読むと、大文字で始まる文字列と一致することがわかります。最後の部分 [a-z] は、大文字で始まる文字列が見つかった場合、その後にアルファベットの小文字が続くことを意味します。 それでは、この正規表現を使用すると、次のどの文字列が一致するのでしょうか?よくわからない場合は、Python (次のセクションで説明します) を使用して答えをテストできます。 リーリー 正規表現は非常に広範なトピックであり、これらの例は、正規表現が何であるか、および正規表現を使用する理由を理解するためのものです。

RexEgg は、正規表現について詳しく学び、より多くの例を参照するのに適したリファレンスです。

Python の正規表現

さて、楽しい部分に移りましょう。上記の正規表現のいくつかを Python で使用する方法を見ていきたいと思います。 Python で正規表現を処理するために使用するモジュールは

re

モジュールです。

最初の例は、abder という単語の検索に関するものです。 Python では、これを次のように行います:

リーリー

上記の Python スクリプトを実行すると、次の出力が得られます: None!

スクリプトは正常に動作しますが、問題は関数 match() の動作方法です。

re

モジュール ドキュメントを返す場合、関数 match() の動作は次のとおりです。

如果字符串开头的零个或多个字符与正则表达式模式匹配,则返回相应的匹配对象。如果字符串与模式不匹配,则返回 None;请注意,这与零长度匹配不同。

啊哈,从这里我们可以看出,match() 仅当在字符串的开头找到匹配项时才会返回结果。

我们可以使用函数 search(),这是基于文档的:

扫描字符串,查找正则表达式模式产生匹配的第一个位置,并返回相应的匹配对象。如果字符串中没有位置与模式匹配,则返回 None;请注意,这与在字符串中的某个点查找零长度匹配不同。

因此,如果我们编写上面的脚本,但使用 search() 而不是 match(),我们会得到以下输出:

<_sre.sre_match></_sre.sre_match>

即返回了一个匹配对象

如果我们想返回结果(字符串匹配),我们使用 group() 函数。如果我们想查看整个比赛,我们使用 group(0)。因此:

打印 match_pattern.group(0)

将返回输出:Abder

如果我们采用上一节中的第二个正则表达式,即 /a[nr]t/,则可以用 Python 编写如下:

import re
text = 'This is a black ant'
match_pattern = re.search(r'a[nr]t', text)
print match_pattern.group(0)
ログイン後にコピー

此脚本的输出是:ant

结论

文章越来越长,Python 中的正则表达式主题即使不是一本书,也肯定需要不止一篇文章。

然而,本文旨在让您快速入门并有信心进入 Python 正则表达式的世界。您可以参考 re 文档来了解有关此模块的更多信息以及如何深入了解该主题。

以上が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)

Word ファイル処理に Python 正規表現を使用する方法 Word ファイル処理に Python 正規表現を使用する方法 Jun 22, 2023 am 09:57 AM

Python の正規表現は、Word ファイル処理でテキスト、スタイル、形式を迅速に識別して置換するのに役立つ強力なマッチング ツールです。この記事では、Word ファイル処理に Python 正規表現を使用する方法を紹介します。 1. Python-docx ライブラリをインストールする Python-docx は、Word 文書を Python で処理するための機能ライブラリで、Word 文書の読み取り、変更、作成、保存をすばやく行うことができます。 Python-docx を使用する前に、次のことを確認する必要があります。

Python 正規表現を使用して数値と金額を処理する方法 Python 正規表現を使用して数値と金額を処理する方法 Jun 23, 2023 am 08:21 AM

Python の正規表現は、テキスト データの正確かつ効率的な一致と検索を実行するのに役立つ強力なツールです。正規表現は数値や金額の処理にも非常に役立ち、数値や金額の情報を正確に検索して抽出できます。この記事では、Python 正規表現を使用して数値と金額を処理する方法を紹介し、読者が実際のデータ処理タスクにうまく対処できるようにします。 1. 数値の処理 1. 整数と浮動小数点数の照合 正規表現では、整数と浮動小数点数を照合するには、d+ を使用して照合します。

単語の分割に Python 正規表現を使用する方法 単語の分割に Python 正規表現を使用する方法 Jun 23, 2023 am 10:37 AM

Python 正規表現は、テキスト データを処理するための強力なツールです。自然言語処理では、テキストを個々の単語に分割する単語分割が重要なタスクです。 Python では、正規表現を使用して単語の分割タスクを完了できます。以下では、Python3 を例として、単語の分割に正規表現を使用する方法を紹介します。 re モジュールのインポート re モジュールは Python の組み込み正規表現モジュールなので、最初にモジュールをインポートする必要があります。定義テキストをインポートする

コンテナ オーケストレーションに Python 正規表現を使用する方法 コンテナ オーケストレーションに Python 正規表現を使用する方法 Jun 22, 2023 am 09:16 AM

コンテナオーケストレーションでは、多くの場合、一部の情報をフィルタリング、照合、置換する必要があります。 Python は、これらの操作を完了するのに役立つ強力なツールである正規表現を提供します。この記事では、正規表現の基本知識、Pythonre モジュールの使用方法、一般的な正規表現アプリケーションなど、コンテナ オーケストレーションに Python 正規表現を使用する方法を紹介します。 1. 正規表現の基礎知識 正規表現( RegularExpression )とは、テキストのパターンを指します。

コンテンツ抽出に Python 正規表現を使用する方法 コンテンツ抽出に Python 正規表現を使用する方法 Jun 22, 2023 pm 03:04 PM

Python は、コンテンツの抽出をより簡単かつ効率的に行う豊富なライブラリとツールを備えた、広く使用されている高水準プログラミング言語です。その中でも正規表現は非常に重要なツールであり、Python ではコンテンツ抽出に正規表現を使用するための re モジュールが提供されています。この記事では、Python 正規表現を使用してコンテンツを抽出する具体的な手順を紹介します。 1. 正規表現の基本構文を理解する コンテンツ抽出に Python 正規表現を使用する前に、まず正規表現の基本構文を理解する必要があります。

データ構造とアルゴリズムに Python 正規表現を使用する方法 データ構造とアルゴリズムに Python 正規表現を使用する方法 Jun 22, 2023 pm 08:01 PM

Python 正規表現は、パターン マッチングに基づく文字列処理ツールであり、テキストから必要な情報を迅速かつ効率的に抽出するのに役立ちます。データ構造とアルゴリズムでは、正規表現を使用してテキストの一致、置換、セグメンテーション、その他の機能を実装することができ、プログラミングをより強力にサポートします。この記事では、データ構造とアルゴリズムに Python 正規表現を使用する方法を紹介します。 1. 正規表現の基礎知識 開始する前に、まず正規表現の基礎知識を理解しましょう。 文字セット: 角括弧で表され、

コードの美しさとユーザー エクスペリエンスのために Python 正規表現を使用する方法 コードの美しさとユーザー エクスペリエンスのために Python 正規表現を使用する方法 Jun 22, 2023 am 08:45 AM

ソフトウェア開発では、コードの美しさとユーザー エクスペリエンスが無視されることが多く、実際の使用時に多くのソフトウェア問題が発生します。 Python は強力なプログラミング言語として、これらの問題を解決するための強力なツールとして正規表現を提供します。この記事では、コードの美しさとユーザー エクスペリエンスのために Python 正規表現を使用する方法を紹介します。 1. Python 正規表現の概要 正規表現はテキスト パターンを記述する言語であり、テキストの一致、検索、置換、分割に使用できます。 Python の re モジュールが提供するもの

コードのリファクタリングに Python 正規表現を使用する方法 コードのリファクタリングに Python 正規表現を使用する方法 Jun 23, 2023 am 09:44 AM

日常のコーディングでは、コードの読みやすさと保守性を高めるために、コードを変更したり再構築したりする必要があることがよくあります。重要なツールの 1 つは正規表現です。この記事では、コードのリファクタリングに Python 正規表現を使用する方法に関する一般的なテクニックをいくつか紹介します。 1. 検索と置換 正規表現で最もよく使用される機能の 1 つは、検索と置換です。コード内のすべての print ステートメントを logging ステートメントに置き換える必要があるとします。次の正規表現を使用して検索できます: prints*((.

See all articles