这是如何在不使用正则表达式文字语法的情况下创建正则表达式的方法。这使您可以在它变成正则表达式对象之前进行任意字符串操作:var segment_part = "some bit of the regexp";var pattern = new RegExp("some regex segment" + /*comment here */ segment_part + /* that was defined just now */ "another segment");如果您有两个正则表达式文字,则实际上可以使用此技术将它们连接起来:var regex1 = /foo/g;var regex2 = /bar/y;var flags = (regex1.flags + regex2.flags).split("").sort().join("").replace(/(.)(?=.*\1)/g, "");var regex3 = new RegExp(expression_one.source + expression_two.source, flags);// regex3 is now /foobar/gy这比仅将表达式一和两个作为文字字符串而不是文字正则表达式要复杂得多。