Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
System.Text.RegularExpressions的JavaScript版本?_Javascript_.net - Fatal编程技术网

System.Text.RegularExpressions的JavaScript版本?

System.Text.RegularExpressions的JavaScript版本?,javascript,.net,Javascript,.net,我希望在JavaScript中模拟System.Text.RegularExpressions命名空间,用JavaScript版本替换Silverlight产品。它需要继续运行.NET正则表达式,因为这一直是它的名声所在 我研究了三种.NET到JavaScript编译器:JSIL、SharpKit和DuoCode。它们都不完全支持此命名空间 有人知道解决这个问题的办法吗?我最后的办法可能是将Regex处理服务器端移动并使用Ajax。但是如果我不需要的话,我真的不想这么做。本机或文本/patter

我希望在JavaScript中模拟System.Text.RegularExpressions命名空间,用JavaScript版本替换Silverlight产品。它需要继续运行.NET正则表达式,因为这一直是它的名声所在

我研究了三种.NET到JavaScript编译器:JSIL、SharpKit和DuoCode。它们都不完全支持此命名空间


有人知道解决这个问题的办法吗?我最后的办法可能是将Regex处理服务器端移动并使用Ajax。但是如果我不需要的话,我真的不想这么做。

本机或文本
/pattern/I
没有提供什么?regexoption、backreference和平衡匹配支持都有差异。另一个选择是我花大量时间自己翻译。这个名称空间是开源的,因此理论上我可以用JavaScript重写整个内容。遗憾的是,尽管您可以使用
\n
反向引用捕获组,其中n是组号,但您不能回溯,也不能轻松平衡匹配,因为JavaScript没有所有格量词,即
?+
。如果您想要这些行为,您可能最终需要一个定制的RegExp实现,它不会很快:(@PaulS.Yeah,它与.NET 100%的行为相匹配很重要,因为这个应用程序被宣传为.NET正则表达式测试程序。如果你以这种方式宣传你的站点,也许AJAX是最好的方法。什么不是由本机或文本
/pattern/i
提供的?正则表达式选项和反向引用都有差异ences和平衡匹配支持。另一个选择是我自己花费大量时间来执行翻译。这个名称空间是开源的,因此我可以从理论上用JavaScript重写整个内容。遗憾的是,尽管您可以使用
\n
反向引用捕获组,其中n是组号,但您无法查找BACk和您无法轻松平衡匹配,因为JavaScript没有所有格量词,即
?+
。如果您想要这些行为,您可能最终需要一个不快的自定义RegExp实现:(@PaulS.Yeah,它必须100%匹配.NET的行为,因为这个应用程序是以.NET正则表达式测试仪的身份发布的。如果你以这种方式发布网站广告,也许AJAX是最好的方式。