【问题标题】:Dynamic making Regexp [duplicate]动态制作Regexp [重复]
【发布时间】:2015-11-16 19:38:30
【问题描述】:

我正在寻找一种在 Javascript 中使用动态正则表达式的工作解决方案。

这个解决方案对我有用:(但不是动态的)

new RegExp(\bal\i);

但此解决方案不起作用:

var value = 'bal';
new RegExp('\'+value+'\i');

谁能帮助我如何调整它以使其正常工作?谢谢

【问题讨论】:

  • 将字符串传递给 RegExp 构造函数,看看 docs 怎么说...
  • 例如 balicekt123@gmail.com 但可以有任何名字或姓氏
  • 你的意思是/bal/i 是一个工作正则表达式吗?
  • 是的,正是 /bal/i 对我有用,但我需要将“bal”这个词更改为一些动态的东西,就像参数一样进入函数

标签: javascript regex


【解决方案1】:

您可以在 RegExp 构造函数中传递字符串(值)以及 ignoreCase 标志:

 var value = 'bal';
 var b = new RegExp(value, 'i')
 b.test('BAL')

它返回真。

【讨论】:

  • 当然应该使用构造函数。人们每天会发布数十次这样的问题。
猜你喜欢
  • 2011-07-02
  • 2018-11-10
  • 1970-01-01
  • 2018-08-23
  • 2020-03-15
  • 1970-01-01
  • 1970-01-01
  • 2011-11-25
  • 1970-01-01
相关资源
最近更新 更多