ホームページ > バックエンド開発 > Python チュートリアル > Python で正規表現を使用してマーカー間の部分文字列を抽出する方法

Python で正規表現を使用してマーカー間の部分文字列を抽出する方法

Patricia Arquette
リリース: 2024-12-07 01:42:10
オリジナル
612 人が閲覧しました

How to Extract Substrings Between Markers in Python Using Regular Expressions?

マーカー間の部分文字列の抽出

文字列とマーカーのペアが与えられた場合、タスクはこれらのマーカー間の部分文字列を抽出することです。たとえば、文字列「gfgfdAAA1234ZZZuijjk」について考えてみましょう。目的は、'1234' 部分を取得することです。

Python では、正規表現がこの問題に対する強力な解決策を提供します。次のコード スニペットを考えてみましょう:

import re

text = 'gfgfdAAA1234ZZZuijjk'

m = re.search('AAA(.+?)ZZZ', text)
if m:
    found = m.group(1)

# found: 1234
ログイン後にコピー

式 'AAA(. ?)ZZZ' は、'AAA' と 'ZZZ' の間の任意の部分文字列と一致します。式の中のかっこは、部分文字列をグループとしてキャプチャし、'. ?' quantifier は、任意の数の文字に貪欲に一致することを保証します。

re.search() 関数は、テキスト内で最初に出現するパターンを検索し、キャプチャされたグループを含む一致オブジェクトを返します。 。 group(1) メソッドは、マーカー間の部分文字列を抽出し、見つかった変数に割り当てます。

代わりに、try-excel ブロッ​​クで潜在的なエラーを処理できます。

import re

text = 'gfgfdAAA1234ZZZuijjk'

try:
    found = re.search('AAA(.+?)ZZZ', text).group(1)
except AttributeError:
    # AAA, ZZZ not found in the original string
    found = '' # Your error handling here

# found: 1234
ログイン後にコピー

このアプローチでは、次のことが保証されます。 group(1) メソッドの実行時に発生する AttributeError を処理するため、テキストにマーカーが存在しなくてもプログラムは実行を継続します。失敗します。

以上がPython で正規表現を使用してマーカー間の部分文字列を抽出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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