python - 如何正则匹配成对标签对中的内容?
PHP中文网
PHP中文网 2017-04-17 15:52:15
0
3
949
PHP中文网
PHP中文网

认证0级讲师

全部回覆(3)
黄舟

我想你是希望匹配任意層級的成對括號對吧。 簡單來講用regex是不可行的

正規表示式本質上是一個有限狀態機,有限狀態機除了目前它所在的狀態之外,不會儲存其他東西。
就匹配任意層級的成對括號而言,需要任意長度的儲存(對應於層級)。寫死的正規表示式是做不到的,解決該問題的函式庫也是需要動態記憶體的。參見:http://stackoverflow.com/questions/133601/can-regular-expressions-be-used-to-match-nested-patterns

如果你的問題比較一般(general),例如任意成對標籤。最常見的例如XML或HTML,因為語法的多元和相容這在實務上會更有難度,你基本上得用一個函式庫了。參見:http://stackoverflow.com/questions/701166/can-you-provide-some-examples-of-why-it-is-hard-to-parse-xml-and-html-with-a-reg

阿神

標準庫裡的正規引擎是不支援的。這個 regex 函式庫支持,到網頁搜尋「recursive」即可找到用法。

迷茫

一樓正解,用棧可以實現。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板