我有一個正則表達式,應該找到所有的「標題行」,其中包含一些不以句號結束的文本或?或:Python,這個正則表達式應該如何工作
tit_pat = re.compile(r"([\w ]+?)(?![!?.])\n",re.UNICODE)
res = tit_par.findall(data)
: 例子:
章1X測試
這是一條測試測試測試測試測試。這與一些文字和更 text.This測試與一些文字和更多的文字一些文字和更多的文字。 這是一些更多的文字一些更多的文字一些更特克一些更多的文字 章aaa
這是一個測試。這與一些文字和更多的文字測試一些文字和更多的文字一些文字和更多的文字一些文字和更多的文字。
bbbb
結束。
正則表達式找到所有包含一些沒有句號和換行的文本的「標題行」。這是預料之中的,因爲有一個(負面)向前看的聲明,在接受之前檢查沒有期間(或!或?)。 但是,我可能有一句話在一行中開始,並以下一行中的句點結束。正則表達式沒有找到沒有句點的文本行。有沒有解釋這種行爲?
我使用正則表達式的原因是我正在讀取一個大文件作爲字符串來執行一些搜索操作。我已經移除了「向前看」,並且它仍然按照預期執行。謝謝Karl Knechtel! – user963386