javascript - 如何从字符串构建正则表达式

标签 javascript

我有一个字符串和一个匹配模式,如下所示:

var string = 'stackoverflow Javascript Regex Help';    
var pattern=/(^stackoverflow Javascript)/;

我正在寻找一种方法来重用以前的模式,而不必再次重写它。很快,我想在之前的模式末尾添加一个附加选项(在分割之前匹配空格)

var newString=string.split(pattern+/(.\S*)/);
alert(newString); //Regex Help

但这行不通。 有什么办法可以实现这个目标吗?

感谢您的帮助。

最佳答案

您可以使用 RegExp 从字符串构建正则表达式:

var common_pattern = "(^stackoverflow Javascript)";
var extra_pattern = "(.\\S*)"; // need to escape the escape character because the pattern is now a string
var regexp = new RegExp(common_pattern + extra_pattern);

var newString = string.split(regexp);

关于javascript - 如何从字符串构建正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35868824/

相关文章:

javascript - 无法通过 API 调用发送 Firebase QueryDocumentSnapshot

javascript - 如何导出具有超过 20000 个数组的 json 文件(数据)以使用 angular js 进行 excel?

javascript - 为什么摇动事件在phonegap中不起作用?

javascript - 使用javascript显示时间表

javascript - 如何在 MUI TextField 中设置样式?

javascript - AJAX 不发送数据

javascript - 无法使用 JSON 发送 Jquery Ajax 帖子以进行工作

javascript - 使用对象解构删除属性,没有 eslint no-unused-vars 错误

Javascript 对象和 DOM

javascript - 砌体画廊未正确堆叠