gpt4 book ai didi

java - 在 String.contains() 中使用换行符

转载 作者:行者123 更新时间:2023-11-29 07:32:49 24 4
gpt4 key购买 nike

我有如下文字:

Grad/Med School University of Osteopathic Medicine andHealth Sci.
这是从 pdfFile 读入一个名为 pdfFileText 的字符串 (Java) 的。其实以上只是全文的一小部分。

我还将有一个名为 institution 的字符串。在这种情况下,institution 的值为“University of Osteopathic Medicine and Health Sci”。

在 PDF 文件中,如您所见,大学名称超出了线宽,因此换行到下一行。

我想做的是验证 pdfFileText.contains(institution)。但是由于该机构是换行的,所以这将不起作用。

我尝试创建一个新的字符串 ins = institution.replaceAll("", [\n\r]+);但这没有用。我还尝试了不同数量的破折号,直到 institution.replaceAll("", [\\\\n\\\\r]+);或者更多的反斜杠。但似乎没有任何效果。

可以使用什么是正确的正则表达式?或者,contains() 可能不允许使用正则表达式?你会建议尝试模式匹配器吗?我仍然对用什么替换模式中的空格感到困惑。

最佳答案

你在倒退。首先从输入中删除行尾:

pdfFileText.replaceAll("\\s+", " ").contains(institution)

如果您不能保证 institution 将始终被规范化,那么也要对其进行预处理:

pdfFileText.replaceAll("\\s+", " ")
.contains(institution.replaceAll("\\s+", " "))

如果在测试后发现由于输入大小而导致速度太慢,请实现您自己的 contains,它在匹配时会跳过额外的空格。

关于java - 在 String.contains() 中使用换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39724930/

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