我有一串這樣的代碼:
replace [IntType]
import TYPE [libc_to_basic_type_entry*]
現在我想使用 Python 正則表達式將它們拆分為數組,如下所示:
["replace", "[", "IntType", "]"]
["import", "TYPE", "[", "libc_to_basic_type_entry, "*", "]"]
做這個的最好方式是什麼?謝謝。
起初,我嘗試做簡單的事情string.split("[")
並繼續循環遍歷字符串以split
使用其他字符。但是我發現這種方式並不有效,所以我想通過使用正則表達式尋求幫助。
你可以使用這個正則表達式:
\s*(\w+|[^\w\s])\s*
正則表達式詳情:
\s*
: 匹配 0 個或多個空格(
: 開始捕獲組
\w+
: 匹配 1+ 個單詞字符|
: 或者[^\w\s]
: 匹配一個不是單詞或空白字符的字符)
: 結束捕獲組\s*
: 匹配 0 個或多個空格代碼:
s = 'import TYPE [libc_to_basic_type_entry*]'
print (re.findall(r'\s*(\w+|[^\w\s])\s*', s))
輸出:
['import', 'TYPE', '[', 'libc_to_basic_type_entry', '*', ']']
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句