我有一個這樣的字串:
string = ' "K" -4 2-2 1 "W" 4-1-6-8-6-4 5 "Q" '
我想用 re.findall 創建一個串列,如下所示:
['"K"', "-4 2-2 1 ", '"W"', " 4-1-6-8-6-4 5 ", '"Q"']
誰可以幫我這個事?
uj5u.com熱心網友回復:
你不需要正則運算式,你需要 string.split()
uj5u.com熱心網友回復:
您可以使用string.split()拆分字串中的空格。由于您的特定字串也有尾隨空格,我建議您也使用string.strip().
mystring = ' "K" -4 2-2 1 "W" 4-1-6-8-6-4 5 "Q" '
mylist = mystring.strip().split(" ")
mylist 將具有您需要的格式:
['"K"', '-4 2-2 1 ', '"W"', ' 4-1-6-8-6-4 5 ', '"Q"']
如果您真的需要使用正則運算式執行此操作,我想您可以使用如下運算式:
import re
myregex = r"(\"\w\") ([- 0-9] ) (\"\w\") ([- 0-9] ) (\"\w\")"
mystring = ' "K" -4 2-2 1 "W" 4-1-6-8-6-4 5 "Q" '
mylist = re.findall(myregex,mystring)
兩者都會產生相同的串列,但使用stripandsplit可能會有更好的性能。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/412138.html
標籤:
