什么是正则expression式“独立捕获组”?
从Java 6 模式文档:
特殊结构(非捕获)
(?:
X)
X ,作为一个非捕获组…
(?>
X)
X ,作为一个独立的非捕获组
在(?:X)
和(?>X)
什么区别? 在这种情况下, 独立是什么意思?
这意味着这个分组是primefaces的 ,并且为匹配的组丢弃了回溯信息。 所以,这个expression是占有的; 即使这样做是正则expression式整体成功的唯一途径也不会退后。 它是“独立的”,因为它不通过回溯与正则expression式的其他元素进行合作以确保匹配。
如果你有foo(?>(co)*)co
,那永远不会匹配。 我肯定有些实际的例子说明什么时候这会有用,请尝试O'Reilly的书。
(?>X[?/*/+])
与(?:X)[?/*/+]+
。
- 这个巨型正则expression式是如何工作的?
- 正则expression式在Python中的string中查找url
- 如何在Python中实现recursion正则expression式?
- 在Javascript中,如何执行全局replacestring与'/'和'/ g'中的variables?
- 使用正则expression式来parsingHTML:为什么不呢?
- 电话validation正则expression式
- replaceString中的所有双引号
- DataAnnotationsvalidation(正则expression式)在asp.net mvc 4 – 剃刀视图
- 正则expression式来匹配一个单独的字符,而不是一个空格