javascript - 为什么我在测试正则表达式时会出错?

标签 javascript regex

为什么以下脚本返回 false ?

var a = new RegExp("/^[A-Za-z]+[A-Za-z\s]+$/");
var b = "software engineer";
var c = "software.engineer";

var bool = a.test(b);
document.write(bool);

这就是我对 reg exp 的理解:字符串可以以可能出现一次或多次的字母开头,以可能出现一次或多次的空格或字母结尾。

在这种情况下它应该返回 true!

最佳答案

您需要使用:

var a = new RegExp("^[A-Za-z]+[A-Za-z\\s]+$");

或者:

var a = /^[A-Za-z]+[A-Za-z\s]+$/;

因此,如果您使用 new RegExpnew RegExp 也需要双重转义,则无需分隔符。

关于javascript - 为什么我在测试正则表达式时会出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25184936/

相关文章:

javascript - ionic,如何在谷歌地图上显示正确的信息窗口?

javascript - ObjMap 返回值或函数

javascript - 跨多个选项卡共享单个 WebSocket 连接的最佳/正确方式

javascript - 为什么response.data未定义?

用于匹配冒号和下一个冒号之前的最后一个换行符的正则表达式

python - 在 python 中匹配这个正则表达式(负向前瞻?)

regex - Perl 使用困难的正则表达式将字符串从 XML 写入文件

javascript - React setstate 方法的回调未触发

Python 字符串替换为正则表达式替换变量

java - 一组随机字符和数字的正则表达式