鍍金池/ 問答/Python/ pattern=re.compile(ur"[(\[({][^()()

pattern=re.compile(ur"[(\[({][^()(){}]*[)}\])]") 沒看懂

pattern=re.compile(ur"[(\[({][^()(){}]*[)}\])]")
all_subs=pattern.split(cell_text)

求解 這兩行代碼是什么意思

回答
編輯回答
悶油瓶

這個正則表達(dá)式用來匹配括號里的一段內(nèi)容,前面的

[(\[({]

匹配左括號,中間的一段

[^()(){}]*

匹配非括號的任意多字符,最后的

[)}\])]

匹配右括號,之所以左括號,右括號用這么長正則,是為了兼容小括號,中括號和大括號,甚至中文的小括號。

pattern.split是用這個正則表達(dá)式把后面的cell_text分隔為一個數(shù)組,給個例子給你看就明白了:

clipboard.png

2017年6月6日 13:26