js里两个正则表达式怎么相加?

Henry.6 2011-12-07 02:59:19
比如:
var a=/a/ig
var b=/b/ig
我想要的正则表达式是/ab/ig
怎么得到?
var c=a+b //这个肯定错的 结果是 /a/gi/b/gi
...全文
495 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunwenjunnet 2011-12-07
  • 打赏
  • 举报
回复
我靠,见识了,正则表达式还能相加???
Henry.6 2011-12-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 sencha_android 的回复:]
两个正则式之间没有太大的关系,不知为何要进行这样的操作
[/Quote]
动态生成正则
最后一个菜鸟 2011-12-07
  • 打赏
  • 举报
回复
两个正则式之间没有太大的关系,不知为何要进行这样的操作
Henry.6 2011-12-07
  • 打赏
  • 举报
回复
谢谢,学习了。在w3cschool的正则的介绍中都没提到这个属性
诺维斯基 2011-12-07
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 likeajin 的回复:]
假如不考虑g i m,都统一用gi,那么楼主的需求可以这么解决

JScript code


var a=/a/gi;
var b=/b/gi;
var c=new RegExp(a.source+b.source,'gi');
[/Quote]
是的、
厉害
诺维斯基 2011-12-07
  • 打赏
  • 举报
回复
var test = "afdasdfASDFASDF";
var str = /[a-z]+/g;
var str1 = /[a-z]+/gi;
var re = str.source + str1.source;
alert(str.exec(test));
alert(str1.exec(test));
alert(re);


测试了一下,当这样把两个正则合在一块后,就不是正则了,就变成字符串了。
likeajin 2011-12-07
  • 打赏
  • 举报
回复
假如不考虑g i m,都统一用gi,那么楼主的需求可以这么解决

var a=/a/gi;
var b=/b/gi;
var c=new RegExp(a.source+b.source,'gi');
诺维斯基 2011-12-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 likeajin 的回复:]
JScript code


var a=/a/ig;
var b=/b/ig;
var c=a.source+b.source;//==>c=ab;
如何整合两个正则,需要看两个正则的查询模式是否一样,如果a为gi,b为g,怎么整合?
[/Quote]
应该是按照gi来算吧。
likeajin 2011-12-07
  • 打赏
  • 举报
回复

var a=/a/ig;
var b=/b/ig;
var c=a.source+b.source;//==>c=ab;
如何整合两个正则,需要看两个正则的查询模式是否一样,如果a为gi,b为g,怎么整合?

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧