gpt4 book ai didi

Java 正则表达式 hasNext() 匹配下一个的结尾

转载 作者:行者123 更新时间:2023-11-30 04:11:41 24 4
gpt4 key购买 nike

假设我从输入文件构造一个新的扫描仪

Scanner aScanner = new Scanner(new FileReader("file.txt"));

file.txt 有多行这样的

blah blah blah blah
blah blah blah

我想检查扫描仪是否具有与我的模式匹配的下一个值:

 aScanner.hasNext("blah");

效果很好。但是,当我尝试使用行尾字符 $:

 aScanner.hasNext("blah$");

失败了。当我标记多行时它甚至会失败(?m)。然后我意识到 $ 匹配字符串的结尾或输入的结尾,这不是所呈现的两种情况(除了最后)。鉴于此,我将如何匹配下一个输入的结尾?

最佳答案

传递给 hasNext() 的参数是分隔符的模式,然后在调用 next() 时使用 .

尝试使用后视:

aScanner.hasNext("(?<=blah)\\s+");

这表示使用空格作为分隔符,但前提是前面有“blah”,尽管这会消耗“blah”之前的所有内容,并根据需要跳过其他字符。

关于Java 正则表达式 hasNext() 匹配下一个的结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19462299/

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