首頁 > 後端開發 > Python教學 > 如何查找 Python 字串中所有出現的子字串?

如何查找 Python 字串中所有出現的子字串?

Linda Hamilton
發布: 2024-12-22 00:53:38
原創
832 人瀏覽過

How Can I Find All Occurrences of a Substring in a Python String?

尋找子字串的所有出現

Python 提供了廣泛的字串操作功能,包括函數string.find() 和string .rfind( )分別從開頭和結尾檢索子字串的第一次出現。然而,當我們試圖找出子字串的所有出現位置時,這些函數就顯得不夠了。

解決方案:利用正規表示式

在沒有內建「字串」的情況下.find_all()」函數,我們可以利用正規表示式的力量:

import re

text = "test test test test"

# Find all occurrences of "test"
matches = [m.start() for m in re.finditer('test', text)]

# Print the found indexes
print(matches)  # [0, 5, 10, 15]
登入後複製

這個解迭代re.finditer('test', text)的結果,一個生成器,為每個發現的事件產生匹配物件。屬性,我們獲得表示子字串在原始字串中的位置的索引列表。使用前瞻性斷言來捕捉它們表達式:

執行反向搜尋

要執行反向查找所有而不重疊,可以使用正向和負向前瞻的組合:
matches = [m.start() for m in re.finditer('(?=tt)', 'ttt')]
# [0, 1]
登入後複製

透過使用正規表示式,我們可以有效地識別和檢索Python中所有出現的子字串字串。

以上是如何查找 Python 字串中所有出現的子字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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