'+'和'?'连续使用正则表达式

时间:2010-09-10 21:18:10

标签: java regex jax-rs

Java EE REST指定JAX-RS描述了将路径变量转换为正则表达式,如/customer/{id}中所示。

来自JAX-RS 1.1规范,第19页:

  

将每个URI模板变量替换为包含指定正则表达式的捕获组,如果未指定正则表达式,则替换为“([/] +?)”。

java.util.regex.Pattern的Java API doc说:

X?     X, once or not at all
X+     X, one or more times

那么,+?是什么意思?

1 个答案:

答案 0 :(得分:9)

?+之后的*意味着它不会贪婪。

例如:
“testftestf”中的(.*)f,第一组将匹配“testftest”
testftestf中的(.*?)f“,第一组将匹配”test“


资源: