答案 0 :(得分:1)
我认为真正的答案并不像你想的那么简单。简短(和不完整)答案就是“所有表达式都是从左到右评估”......
对于长篇答案,请到这里。
http://msdn.microsoft.com/en-us/library/e347654k.aspx
.NET Framework正则表达式引擎是一种回溯常规 表达匹配器结合了传统的不确定性 有限自动机(NFA)引擎......传统的NFA引擎执行 模式匹配,他们的处理顺序是由常规驱动的 表达模式。当它处理特定的语言元素时, 引擎使用贪心匹配;也就是说,它与之相匹配 尽可能输入字符串。但它也拯救了它的状态 成功匹配子表达式。如果匹配最终失败, 引擎可以返回保存状态,以便可以尝试其他操作 匹配。
编辑:忘记回答问题的第二部分。
关于RegexOptions.ECMAScript,您可以参考以下文档:
http://msdn.microsoft.com/en-us/library/yd1hzczs.aspx
ECMAScript和规范正则表达式的行为有所不同 在三个方面:字符类语法,自引用捕获 组,八进制与反向引用解释。
看起来“订单”不会受到影响,但可能还有其他问题。文档很好地说明了差异。
答案 1 :(得分:1)
这是很久以前的问题,但没有回答。
.Net正则表达式运算符预定义在正则表达式语法页面1的底部定义。