正则表达式在IE9中不起作用

时间:2011-01-20 12:41:21

标签: regex internet-explorer-9

关于为什么以下内容不能用于任何IE9测试版的任何想法? IE8正常(或IE9运行兼容模式):

if(b.msie){
  b.ver = /MSIE (\d+(.\d+)?)/.exec(ua)[1];
 }else if(b.mozilla){
  b.ver = /Firefox\/(\d+(.\d+)?)/.exec(ua)[1];
 }else if(b.opera){
  b.ver = /Opera\/? ?(\d+(\.\d+)?)/.exec(ua)[1];
 }else if(b.safari){
  b.ver = /Version\/(\d+(\.\d+)+)/.exec(ua)[1];
 }else if(b.chrome){
  b.ver = /Chrome\/(\d+(\.\d+)+)/.exec(ua)[1];
 }

1 个答案:

答案 0 :(得分:0)

你不想要String.match()吗?例如b.ver = ua.match(/MSIE (\d+(\.\d+)?)/)[1];
你还需要在角色类之外转义.