使用正則表達(dá)式解析HTML:為什么不呢?使用正則表達(dá)式從HTML中獲取一些信息將不可避免地有一個(gè)“答案”,表示不使用正則表達(dá)式來(lái)解析HTML。為什么不?我知道那里有引用 - 不引用“真正的”HTML解析器,比如Beautiful Soup,我相信它們是強(qiáng)大而有用的,但是如果你只是做一些簡(jiǎn)單,快速或骯臟的事情,那么為什么當(dāng)一些正則表達(dá)式語(yǔ)句運(yùn)行得很好時(shí),麻煩使用如此復(fù)雜的東西?此外,是否有一些基本的東西,我不了解正則表達(dá)式,這使得它們一般是解析的錯(cuò)誤選擇?
4 回答

有只小跳蛙
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個(gè)贊
對(duì)于quick'n'dirty regexp會(huì)很好。但要知道的根本事情是,構(gòu)建一個(gè)正確解析HTML 的正則表達(dá)式是不可能的。
原因是regexp無(wú)法處理任意嵌套表達(dá)式。請(qǐng)參閱可以使用正則表達(dá)式來(lái)匹配嵌套模式嗎?

湖上湖
TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊
兩個(gè)快速的原因:
編寫一個(gè)可以抵御惡意輸入的正則表達(dá)式很難; 比使用預(yù)建工具更難
寫一個(gè)可以使用你將不可避免地被困的荒謬標(biāo)記的正則表達(dá)式很難; 比使用預(yù)建工具更難
關(guān)于正則表達(dá)式一般用于解析的適用性:它們不適合。您是否見過(guò)解析大多數(shù)語(yǔ)言所需的各種正則表達(dá)式?
添加回答
舉報(bào)
0/150
提交
取消