我試圖拆分多個消息(如在聊天記錄中),這些消息將由用戶名和日期分隔。問題是使用g修飾符使得正則表達式匹配的一切直到最後一部分。解釋起來有些困難,所以這裏有一個regex101,它可以更好地解釋它。將多個多行消息拆分爲匹配
謝謝你的時間。
我試圖拆分多個消息(如在聊天記錄中),這些消息將由用戶名和日期分隔。問題是使用g修飾符使得正則表達式匹配的一切直到最後一部分。解釋起來有些困難,所以這裏有一個regex101,它可以更好地解釋它。將多個多行消息拆分爲匹配
謝謝你的時間。
讓你的正則表達式lazy
使用?
(.*?), (\[\d+\.\d+\.\d+ \d+:\d+])\n([\s\S]*?)
而且,也沒有必要最後一部分的使用g
修飾時。這將足以
(.*?), (\[\d+\.\d+\.\d+ \d+:\d+])
如果你想捕捉的消息,那麼你可以使用
(.*?), (\[\d+\.\d+\.\d+ \d+:\d+])\n([\s\S]*?)(?=(?:(?:.*?), (?:\[\d+\.\d+\.\d+ \d+:\d+]))|$)
您正在使用什麼語言
? – Bohemian
它將在PHP中。 – mattrick