【发布时间】:2017-08-30 13:18:54
【问题描述】:
在 SQL 中,我们有模式匹配运算符 like 与“_”和“%”来搜索字符串或字符串的一部分。
Java中有没有类似的东西。
有matches() 方法。但是,只有在整个 String 与正则表达式匹配时,才会返回 true。
我需要一种可以评估给定String 是否存在于另一个String 中的方法。
【问题讨论】:
-
"_" and "%不是pattern matching operators。那是通配符 -
亲爱的,你想要
contains -
仅当整个字符串与正则表达式匹配时才返回 true 否。如果字符串与正则表达式匹配则返回 true。您可以为每个字符使用点。像
.*HELLO World.*这样的东西也会匹配HELLO World i am here -
@Jens 值得一提的是,默认情况下
.不匹配行终止符,因此这不适用于多行文本。为了解决这个问题,我们可以使用 DOTALL 标志(我们可以将(?s)放在正则表达式的开头),或者代替.使用集合的总和及其否定,如[\s\S]来表示所有字符。
标签: java pattern-matching match