【发布时间】:2013-12-18 10:47:35
【问题描述】:
String str1 = "My hobby is playing \"Tennis\" I am good at it. I love it."
String str2 = "My hobby is playing \"Tennis\". I (Alex) am good at it. I(Alex) love it. "
我想检查 str1 是否与除 Alex 部分之外的 str2 匹配。
注意 - 亚历克斯在这里是一个变化的部分。可能是汤姆、哈里等。
所以我尝试了:-
str2 = "My hobby is playing \"Tennis\". I (.*) am good at it. I(.*) love it. "
str1.matches(str2)
但它返回 false。
我在这里做错了什么?
它适用于:-
str2 = "My hobby is playing \"Tennis\". I (.*)
【问题讨论】:
-
“我不想使用正则表达式。”
.*是之一。 -
没有它也不起作用。即使我使用 -
String str1 = "My hobby is playing \"Tennis\". I am good at it. I love it. String str2 = "My hobby is playing \"Tennis\". I .* am good at it. I .* love it. -
-
在 str2 中尝试将每个
\"替换为\\\" -
@grexter89:这无济于事。引号符号在我熟悉的任何正则表达式风格中都没有特殊含义——当然在 Java 中没有。添加另一个反斜杠不会伤害,但也不会有任何好处。
标签: java regex string-matching