gpt4 book ai didi

java - 如何使用正则表达式在以 "\n"分隔的多行中定位某个字符串 A 之后的某个字符串 B

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

我将 pdf 文件中的文本存储在字符串中。大约有 30 行由 "\n" 分隔。 。我在java中使用正则表达式来定位另一个字符串后面的子字符串。但这两个字符串不在同一行。

例如,这样的文字:

Title
content1
the percentage is 23%
This is a test. Test A
the percentage is 80%
content2

我需要获取 "This is a test" 之后的所有百分比,在本例中80%

我使用正则表达式:(?<=This is a test.)\\d*\\d\\%

但似乎只是查看行 "This is a test. Test A" ,之后就没有任何内容了。

我知道我可以使用拆分,但在实际情况下,我可能需要多次拆分,这将损害我现在拥有的当前方法结构。尝试使用纯正则表达式来完成它。请给我一些建议。

最佳答案

This is a test[\s\S]*?(\d+%)

试试这个。抓取捕获或组。查看演示。

https://regex101.com/r/pM9yO9/11

对于java使用

This is a test[\\s\\S]*?(\\d+%)

关于java - 如何使用正则表达式在以 "\n"分隔的多行中定位某个字符串 A 之后的某个字符串 B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28198227/

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