搜尋
首頁後端開發Python教學在Python中,如何分割一個包含多個分隔符號的字串?

要使用多個定界符拆分字串:

使用re.split() 方法,例如re.split(r',|-', my_str)

re.split() 方法將拆分所有出現的分隔符號之一的字串。

import re
# ????️ 用 2 个分隔符拆分字符串
my_str = 'fql,jiyik-dot,com'
my_list = re.split(r',|-', my_str)  # ????️ 以逗号或连字符分隔
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

re.split 方法接受一個模式和一個字串,並在每次出現該模式時拆分字串。

管道 | 字元是一個或。匹配 A 或 B。

此範例使用 2 個分隔符號(逗號和連字號)拆分字串。

# ????️ 用 3 个分隔符拆分字符串
my_str = 'fql,jiyik-dot:com'
my_list = re.split(r',|-|:', my_str)  # ????️ comma, hyphen or colon
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

下面是一個使用 3 個分隔符號(逗號、連字符和冒號)拆分字串的範例。

我們可以使用盡可能多的 | 正規表示式中必要的字元。

使用方括號 [] 根據多個定界符拆分字串

或者,我們可以使用方括號 [] 來指示一組字元。

import re
my_str = 'fql,jiyik-dot,com'
my_list = re.split(r'[,-]', my_str)
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

在Python中,如何分割一個包含多個分隔符號的字串?

確保在方括號之間新增所有分隔符號。

import re
# ????️ 用 3 个分隔符拆分字符串
my_str = 'fql,jiyik-dot:com'
my_list = re.split(r'[,-:]', my_str) # 以逗号、连字符、冒号分割
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

如果字串以其中一個定界符開頭或結尾,我們可能會在輸出清單中得到空字串值。

處理前導或尾隨定界符

我們可以使用清單理解從清單中刪除任何空字串。

import re

# ????️ 用 3 个分隔符拆分字符串
my_str = ',fql,jiyik-dot:com:'

my_list = [
    item for item in re.split(r'[,-:]', my_str)
    if item
]

print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

清單推導負責從清單中刪除空字串。

清單推導用於對每個元素執行某些操作或選擇滿足條件的元素子集。

另一種方法是使用 str.replace() 方法。

使用str.replace() 拆分具有多個定界符的字串

要使用多個定界符拆分字串:

  • 使用str.replace() 方法將第一個分隔符號替換為第二個分隔符號。

  • 使用 str.split() 方法以第二個分隔符號拆分字串。

my_str = 'fql_jiyik!dot_com'
my_list = my_str.replace('_', '!').split('!')
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com']

這種方法只在您想要拆分的分隔符號很少時才方便,例如2.

首先,我們用第二個分隔符號替換每個出現的第一個分隔符,然後我們拆分第二個分隔符。

str.replace 方法傳回字串的副本,其中所有出現的子字串都會被提供的替換項目取代。

此方法採用下列參數:

  • old 字串中我們要取代的子字串

  • #new 替換每次出現的old

  • count 只取代第一個count 出現(可選)

請注意 ,該方法不會變更原始字串。字串在 Python 中是不可變的。

這是另一個例子。

my_str = 'fql jiyik, dot # com. abc'

my_list = my_str.replace(
    ',', '').replace(
    '#', '').replace('.', '').split()

print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com', 'abc']

我們使用 str.replace() 方法在拆分空白字元的字串之前刪除標點符號。

我們使用空字串進行替換,因為我們要刪除指定的字元。

我們可以根據需要將盡可能多的呼叫連結到 str.replace() 方法。

最後一步是使用 str.split() 方法將字串拆分為單字清單。

str.split() 方法使用定界符將字串拆分為子字串清單。

此方法採用以下2 個參數:

  • separator 在每次出現分隔符號時將字串拆分為子字串

  • maxsplit 最多完成maxsplit 分割(可選)

當沒有分隔符號傳遞給str. split() 方法時,它會將輸入字串拆分為一個或多個空白字元。

my_str = 'fql jiyik com'
print(my_str.split())  # ????️ ['fql', 'jiyik', 'com']

如果在字串中找不到分隔符,則傳回僅包含 1 個元素的清單。

使用可重複使用函數根據多個定界符拆分字串

如果我們需要經常根據多個分隔符號拆分字串,請定義一個可重複使用的函數。

import re

def split_multiple(string, delimiters):
    pattern = '|'.join(map(re.escape, delimiters))

    return re.split(pattern, string)

my_str = 'fql,jiyik-dot:com'

print(split_multiple(my_str, [',', '-', ':']))

split_multiple 函數接受一個字串和一個分隔符號列表,並根據分隔符號拆分字串。

str.join() 方法用於將分隔符號與管道 | 連接起來。分隔器。

# ????️ ,|-|:
print('|'.join([',', '-', ':']))

這將建立一個正規表示式模式,我們可以使用該模式根據指定的分隔符號拆分字串。

如果我們需要將一個字串拆分為多個分隔符號的單字列表,我們也可以使用 re.findall() 方法。

使用re.findall() 將字串拆分為單字清單

使用re.findall() 方法將字串拆分為具有多個分隔符的單字列表。

re.findall() 方法將在每次出現單字時拆分字串,並傳回包含單字的清單。

import re

# ✅ 将字符串拆分为具有多个分隔符的单词列表
my_str = 'fql jiyik, dot # com. abc'

my_list = re.findall(r'[\w]+', my_str)
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com', 'abc']

re.findall 方法將一個模式和一個字串作為參數,並傳回字串列表,其中包含字串中該模式的所有非重疊匹配項。

我们传递给 re.findall() 方法的第一个参数是一个正则表达式。

import re

my_str = 'fql jiyik, dot # com. abc'

my_list = re.findall(r'[\w]+', my_str)
print(my_list)  # ????️ ['fql', 'jiyik', 'dot', 'com', 'abc']

方括号 [] 用于表示一组字符。

\w 字符与 Unicode 单词字符匹配,并且包括可以作为任何语言的单词一部分的大多数字符。

加号 + 使正则表达式匹配前面字符(Unicode 字符)的 1 次或多次重复。

re.findall() 方法返回一个包含字符串中单词的列表。

以上是在Python中,如何分割一個包含多個分隔符號的字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:亿速云。如有侵權,請聯絡admin@php.cn刪除
Python vs.C:申請和用例Python vs.C:申請和用例Apr 12, 2025 am 12:01 AM

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。Python以简洁和强大的生态系统著称,C 则以高性能和底层控制能力闻名。

2小時的Python計劃:一種現實的方法2小時的Python計劃:一種現實的方法Apr 11, 2025 am 12:04 AM

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python:探索其主要應用程序Python:探索其主要應用程序Apr 10, 2025 am 09:41 AM

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

您可以在2小時內學到多少python?您可以在2小時內學到多少python?Apr 09, 2025 pm 04:33 PM

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?Apr 02, 2025 am 07:18 AM

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?Apr 02, 2025 am 07:15 AM

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Apr 02, 2025 am 07:12 AM

Python3.6環境下加載Pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

如何提高jieba分詞在景區評論分析中的準確性?如何提高jieba分詞在景區評論分析中的準確性?Apr 02, 2025 am 07:09 AM

如何解決jieba分詞在景區評論分析中的問題?當我們在進行景區評論分析時,往往會使用jieba分詞工具來處理文�...

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具