根据字符串或数组内容生成正则表达式
来源:互联网 发布:魔兽世界数据库3.22 编辑:程序博客网 时间:2024/06/07 09:07
今天碰到一个需求:
需要根据数组的每一项或者字符串(其中可能包含特殊字符)动态地生成正则表达式。
如果不需要考虑特殊字符的话,直接new RegExp()就可以了。
而特殊字符即元字符:( [ { \ ^ $ | ) ? * + . ] }
它们在用RegExp构造函数的时候,需要进行双反斜杠转义
在codewar上面看到这样的写法,可以解决这个问题
var str = "{3}()$we";var reg = new RegExp(str.replace(/([.*+?^${}()|\[\]\\])/g, "\$1"), "g");
上面代码可以为str中出现的所有元字符前面都加上反斜杠进行转义
注意:
/([.*+?^${}()|\[\]\\])/
这个正则并没有对里面出现的特殊字符.*+?^${}()|进行转义,并且奏效,可能是最开始的中括号起到了限制作用
0 0
- 根据字符串或数组内容生成正则表达式
- 根据正则表达式生成随机字符串
- 正则表达式获取字符串内容
- 根据传入的参数来生成正则表达式;替换字符串中的全部。
- 使用正则表达式提取字符串中的内容
- 正则表达式截取指定字符串内容
- php 根据字符串生成对应数组方法
- perl 正则表达式 匹配字符串 或逻辑
- [python]根据正则表达式提取指定的内容
- java根据 正则表达式解析html网页内容
- php 根据标签的属性值来爬取内容的正则表达式
- 反向生成符合正则表达式的字符串
- gvim 正则表达式替换字符串为数组
- JAVA正则表达式根据查询SQL自动生成统计SQL
- 根据正则表达式随机生成满足条件的…
- ios开发 根据URL或字符串生成二维码
- 根据正则 替换字符串内容 并返回替换内容后的字符串
- iPhone开发--正则表达式获取字符串中的内容
- c++头文件大全
- 61. PHP 匿名函数
- Awake Start
- Android UI设计规范(google)
- DWZ和ASP.NET MVC等框架的冲突问题解决方案
- 根据字符串或数组内容生成正则表达式
- IE浏览器总是弹出“安全警告”的问题
- lucene3.5通过NRTManager和SearchManager实现近实时搜索
- 一个在线的Apk方法统计工具
- 有关于Mysql远程链接问题
- DHCP的工作原理、怎么检测IP地址冲突
- Oracle Study之--RMAN启用block change tracking错误
- Java 集合转换(Object[]数组、List、Set、Map相互转换)
- JS之Window对象