Jquery-将字符串转换为reg exp对象
Jquery - Convert string to reg exp object
我的正则表达式是/^([a-zA-Z0-9])+([a-zA-Z0-9'._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9'._-]+)+$/
,在html中我将其作为隐藏元素添加,元素的值设置为上述模式
当我这样做时:
var regex = /^([a-zA-Z0-9])+([a-zA-Z0-9'._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9'._-]+)+$/
var text = $(this).val()
然后用CCD_ 2进行测试。
但是当我这样分配正则表达式时:
var regex = $("#m"+id).val() // (my hidden element)
那么它就不起作用了。我也尝试过使用新的RegExp来分配它,但也不起作用。我认为它这样做是因为它将值作为字符串从$("#m"+id).val()
返回(我在这里得到了正确的值),但不确定要将其解析为什么。
如有任何帮助,我们将不胜感激。
如果你想从字符串构建regexp,那么使用regexp类的Constructor,它使用没有斜杠的字符串,所以你应该删除它们。.slice(1, -1)
删除第一个和最后一个字符。尝试使用这个:
var regex = new RegExp($("#m"+id).val().slice(1, -1));
尝试:
var regex = new RegExp($("#m"+id).val())
只有当它是正则表达式文字时,才使用开头和结尾的斜杠。删除它们以获得实际的正则表达式,然后可以使用new RegExp(str)
将字符串转换为regex对象。
相关文章:
- Javascript Reg Exp不正确匹配
- Math.exp() for bigInt?
- Jquery-将字符串转换为reg exp对象
- 带有通配符的姓氏Reg表达式
- 结束标签到开始标签之间的Javascript reg exp
- Javascript reg exp not right
- 使用reg-exp拆分链函数的字符串
- 需要帮助来理解复杂的javascript reg exp
- Javascript (ExtendScript) Reg Exp match
- Javascript : replace reg exp
- Reg Exp for Javascript pattern MM / YYYY
- 无法使用angular.js使用reg exp验证密码字段
- Reg Exp in javascript
- javascript Reg Exp匹配特定的域名
- 在javascript中添加reg exp来确定url是否在/之后有任何字符
- Javascript reg exp将链接插入列表
- 如何匹配阿拉伯语单词与reg exp
- Reg-Exp如何在html元素后匹配文本
- Reg Exp为0,0.0或100.20或0.99或9999.99
- 如何在javascript中使用reg exp获取文本