正则表达式与分隔符

时间:2016-02-16 09:48:37

标签: java regex

我遇到了正则表达式命令的问题:

text="blue:
allocatable
allocate
assign" //it has delimiters (new lines)

String patternblue = ".*blue.*";
boolean isMatchblue = Pattern.matches(patternblue, text.toString());
System.out.println(isMatchblue);

给出“假”,会发生什么?

我检查了论坛中的其他帖子,但我不知道它也没有。*?也不是

1 个答案:

答案 0 :(得分:3)

对于此特定Pattern,您需要使用DOTALL标记,因为.*之后blue与新行不匹配。

由于没有matches覆盖带有可选标记,您最终可能会将代码更改为:

Pattern.compile(patternblue, Pattern.DOTALL).matcher(text).matches();