gpt4 book ai didi

python - 模式匹配 RegEx Python 之间的文本

转载 作者:太空宇宙 更新时间:2023-11-03 11:48:04 25 4
gpt4 key购买 nike

我需要以下模式的帮助,我现在已经苦苦挣扎了好几个小时。我有这样的文字:

<<12/24/2015 00:00  userrrr>>
********** Text all char and symbols ************
<<12/24/2015 00:00 CET userr>>
Text all char and symbols
<<12/24/2015 00:00 GMT+1 userrrr>> Text in same line
<<12/24/2015 00:00 CET userrr>>
Text all characters and symbols
<<12/24/2015 00:00 GMT+1 userrrrrrr>> Text in same line
More Text all characters and symbols
<<12/24/2015 00:00 CET userrrrr>>
More text all characters and symbols
<<12/24/2015 00:00 CET userrrrrrrrrrr>>
More Text all characters and symbols

通过使用模式:

(\<<)(\d{2}/\d{2}/\d{4}\s\d{2}:\d{2})(.*?(?=>>))(>>)

日期时间和箭头之间的所有内容都正确匹配。不幸的是,我找不到在模式之间提取文本的方法。最后的组应该看起来像 (left_arrows)、(datetime)、(user)、(right_arrows)、(text)。我得到的越接近是通过使用:

(\<<)(\d{2}/\d{2}/\d{4}\s\d{2}:\d{2}\s\D{3}.*?(?=\s))\s(.*?(?=>>))(>>)((?s).*?(?=<<\d{2}/\d{2}))

但它没有正确匹配第一个和最后一个。 Click Here to check the result(pythex.org)

最佳答案

(\<<)(\d{2}/\d{2}/\d{4}\s\d{2}:\d{2}\s\D{0,3}.*?(?=\s))\s(.*?(?=>>))(>>)((?s).*?(?=<<\d{2}/\d{2}|$))
^^

您需要为最后一行提供 |$ 以匹配。参见演示。

https://regex101.com/r/fM9lY3/51

关于python - 模式匹配 RegEx Python 之间的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34452240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com