日期:2014-05-16  浏览次数:20453 次

(?<= ) 零宽度正回顾后发断言。仅当子表达式在此位置的左侧匹配时才继续匹配。问题!(?<= )似乎在js中无效?
(?<= ) 零宽度正回顾后发断言。仅当子表达式在此位置的左侧匹配时才继续匹配。问题!(?<= )似乎在js中无效?
如下:
 var test = "121ddddas121333dd ";
 var treg = "(?<=d)dd";

js报错,如果(?<=)换成(?=)就可以,为什么(?<=)会有错?不都是正则语法吗?

------解决方案--------------------
帮ding
------解决方案--------------------
不是。
JS不支持反向预查.
------解决方案--------------------
不是.JS的REGEXP对象不支持反向预查.
若你想实现类似效果,只能用其它的思路.
------解决方案--------------------
楼主要实现什么效果呢,JS里可以通过其他方法变通的
HTML code

<script language="javascript">
    var test = "121ddddas121333dd "; 
     var treg = /^(?:\d+)dd/
     alert(treg.test(test))
</script>