我需要一个正则表达式,它仅在字符串后面没有正斜杠(/)字符并且我想匹配整个字符串时才匹配字符串。
例如下面的字符串应该匹配
/Raj/details/002-542545-1145457
但不是这个
/Raj/details/002-542545-1145457/show
我尝试使用Negative Lookahead来实现此答案所指定的目标。
我的代码是这样的。
pattern = Pattern.compile("/.*/details/(?!.*/)");
matcher = pattern.matcher(text);
if(matcher.matches()) {
System.out.println("success");
} else {
System.out.println("failure");
}
它正在失败。但是,如果我使用matcher.find()
它,它就会成功。
请帮助我理解为什么它不匹配以及实现此目的的正则表达式?