首頁 > 後端開發 > Python教學 > 如何使用正規表示式在 Python 中提取標記之間的子字串?

如何使用正規表示式在 Python 中提取標記之間的子字串?

Patricia Arquette
發布: 2024-12-07 01:42:10
原創
597 人瀏覽過

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' 之間的任何子字串。表達式中的括號將子字串捕獲為一組,而 '. ?量詞確保它非貪婪地匹配任意數量的字元。

re.search() 函數尋找文字中模式的第一次出現並傳回一個符合對象,其中包含捕獲的群組。 group(1) 方法提取標記之間的子字串並將其指派給找到的變數。

或者,try- except 區塊可以處理潛在的錯誤:

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板