Python で正規表現を使用するにはどうすればよいですか?

WBOY
リリース: 2023-06-05 10:40:49
オリジナル
1326 人が閲覧しました

Python は、テキスト操作のための正規表現の使用をサポートする強力なプログラミング言語です。データ分析とテキスト処理があらゆる分野でますます一般的になるにつれて、正規表現のスキルを習得することは、ますます重要な基本スキルとなっています。この記事では、Python で正規表現を使用する方法を学びます。

  1. re モジュールのインポート

Python で正規表現を使用するには、re モジュールをインポートする必要があります。もちろん、正規表現を使用する前に、まず正規表現の構文規則を理解しておく必要があります。ここでは、基本的な正規表現記号とその意味をいくつか示します。

#SymbolMeaning#. 改行文字を除く任意の文字と一致します d 数字と一致します D数字以外の一致#w##W 文字、数字、アンダースコア、または漢字を除く他の文字と一致します。 s スペース、タブ、改行などの任意の空白文字と一致します。 etc.S空白以外の文字と一致します$0 個以上と一致します回1 回以上一致#?{n}{n,}{m,n}[...]#(...)(?:…)(?=...)(?!...)(?< ;= ...)(?
文字、数字、アンダースコア、または中国語の文字
空白文字以外の文字の先頭と一致します文字列
文字列の末尾と一致します
0 回または 1 回一致
n 回完全一致
n 回以上一致複数回
m~n 回一致
角かっこ内の任意の文字 (文字範囲、除外文字などを含む) と一致します。
一致する部分文字列をキャプチャします
一致する部分文字列をキャプチャしません
正 正事前チェック
ポジティブネガティブ事前チェック
逆ポジティブ事前チェック
逆ネガティブ事前チェック
文字列のマッチング
    単純な文字列のマッチングに re モジュールを使用してみましょう。たとえば、文字列内の「hello world」の形式の部分文字列を一致させたい場合、コードは次のとおりです:

  1. import re
    
    # 声明一个字符串
    str1 = "hello world"
    
    # 定义正则表达式
    pattern = "hello world"
    
    # 使用 re 模块进行匹配
    result = re.search(pattern, str1)
    print(result.group())
    ログイン後にコピー
  2. 出力結果:
hello world
ログイン後にコピー

Special文字
  1. 特殊文字を検索する必要がある場合は、正規表現にエスケープ文字 () を追加する必要があります。例:

括弧で終わる単語の検索:
  • # 定义正则表达式
    pattern = r"w+($"
    
    # 使用 re 模块进行匹配
    result = re.search(pattern, "I have a list (item1, item2).")
    print(result.group())
    ログイン後にコピー
  • 出力結果:
list(
ログイン後にコピー

.:# # を含む URL の検索
    #
    # 定义正则表达式
    pattern = r"https?://S+.w+(?<!/)$"
    
    # 使用 re 模块进行匹配
    result = re.search(pattern, "Here is a link: https://www.google.com.")
    print(result.group())
    ログイン後にコピー
  • 出力結果:
  • https://www.google.com
    ログイン後にコピー

複数の部分文字列の一致

テキスト内の複数の部分文字列の一致が必要な場合があります。この場合、findall 関数を使用できます。たとえば、文字列内のすべての電子メール アドレスを検索する場合、コードは次のようになります。
  1. # 定义正则表达式
    pattern = r"w+@w+.w{2,3}"
    
    # 使用 re 模块进行匹配
    result = re.findall(pattern, "Please contact me at alice@gmail.com or bob@hotmail.com")
    print(result)
    ログイン後にコピー

    出力結果:
  2. ['alice@gmail.com', 'bob@hotmail.com']
    ログイン後にコピー

文字列を置き換えます

Python では正規表現を使用して文字列を置換することもできます。たとえば、文字列内のすべての数値を * 記号に置き換える場合、コードは次のようになります。
  1. # 定义正则表达式
    pattern = r"d"
    
    # 使用 re 模块进行匹配和替换
    result = re.sub(pattern, "*", "12345678")
    print(result)
    ログイン後にコピー

    出力結果:
  2. ********
    ログイン後にコピー

概要

この記事の内容では、Python での正規表現の使い方の基本を学びました。正規表現を使用すると、テキスト処理の多くのタスクが容易になることに注意してください。正規表現の基本をマスターすることは、データ サイエンティスト、機械学習エンジニア、ソフトウェア開発者にとって不可欠なスキルです。

以上がPython で正規表現を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート