首頁 >後端開發 >Python教學 >如何在Python中以空格分割字串同時保留引用的子字串?

如何在Python中以空格分割字串同時保留引用的子字串?

Susan Sarandon
Susan Sarandon原創
2024-11-05 00:46:021111瀏覽

How to Split Strings by Spaces While Preserving Quoted Substrings in Python?

在Python 中以空格分割字串,同時保留引號的子字串

處理同時包含空格和帶引號的子字串的字串時,可能會遇到困難準確地分割字串,同時保持引用部分的完整性。在 Python 中,shlex 模組為此特定場景提供了解決方案。

使用shlex.split() 保留引號

shlex.split() 函數可讓您用空格分割字串,同時將引號的子字串視為一個單元。這意味著帶引號的子字串中的空格將被忽略,帶引號的文字將在結果清單中保留為單一元素。

用法範例:

考慮下列字串:

this is "a test"

要使用shlex.split() 分割此字串,只需匯入模組並使用以下程式碼:

import shlex
result = shlex.split('this is "a test"')

結果變數將包含以下清單:

['this', 'is', 'a test']

帶引號的子字串(「a test」)中的空格已被忽略,帶引號的文字已保留為單一元素。

保留引號

如果您還想在結果清單中保留引號本身,您可以將 posix=False 關鍵字參數傳遞給 shlex.split()。

For實例:

result = shlex.split('this is "a test"', posix=False)

這將產生以下列表:

['this', 'is', '"a test"']

引號現在已保留為輸出的一部分。

中總之,Python 中的 shlex.split() 函數提供了一種方便有效的方法來按空格分割字串,同時保留帶引號的子字串的完整性。透過使用 posix=False 關鍵字參數,您也可以在結果清單中保留引號。

以上是如何在Python中以空格分割字串同時保留引用的子字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn