我有三种不同的可能场景来与下面解释的正则表达式匹配。
首先是我需要匹配的文件输入:
-- 1 --- (On 和 :
之间的任何内容 On whatever:
-- 2 --(位于 : 旁边)
On:
-- 3 --(On 和 : 之间的任何字符)
On=:
-- 4 -- (O 和 : 之间的 = 和/n)
On=
:
这是我试图匹配的正则表达式,但没有成功
// String text = <file contents from above>
Pattern PATTERN = Pattern.compile("^(On\\s(.+):)$", Pattern.MULTILINE | Pattern.DOITALL);
Matcher m = PATTERN.matcher(text);
if (m.find()) {
System.out.println("Not sure if this is correct to get all 4cases to step in here???");
}
谢谢!
最佳答案
我可能误解了,但我很确定你想得太多了。所有这些场景基本上都可以简化为:On 和 : 之间的任何内容,包括换行符或空字符串。因此,据我所知, On.*:
应该可以解决问题。
关于java - 正则表达式匹配给定序列的空白、任何字符和/或换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19261996/