gpt4 book ai didi

java - 正则表达式在找到单词后停止处理

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

我有许多具有以下格式的字符串:

Sent to abc xxx zzzz address more words here

Sent to aaaaa gggggg dddddddddd mailbox more words here

我想提取一个在“发送到”之后开始并在“地址”或“邮箱”之后停止的子字符串。例如,在第一种情况下,子字符串将如下所示:“abc xxx zzzz 地址”,在第二种情况下,子字符串将是:“aaaaa gggggg dddddddddd 邮箱”。

以下表达式对我不起作用。它包括“发送到”并持续到字符串末尾。感谢您的反馈。

[Sent to ].*[address|mailbox])

最佳答案

你已经非常接近了,除了你应该使用非捕获组 (?:...)lookaheads/lookbehinds 而不是字符类 [...] :

(?:Sent to )(.*?)(?:address|mailbox)

(?<=Sent to )(.*?)(?=(address|mailbox))

注意点后面的勉强量词*?。它确保捕获结束时不会获取太多输入,这会发生在“贪婪”星号 * (即没有问号)的情况下。

关于java - 正则表达式在找到单词后停止处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46880187/

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