gpt4 book ai didi

javascript - javascript中的正则表达式不匹配字符串中的数字

转载 作者:行者123 更新时间:2023-11-29 17:18:07 25 4
gpt4 key购买 nike

我正在学习 Javascript 中的正则表达式,但有一点我不明白。

下面的正则表达式应该匹配从 a 到 z 的任何字符串,但如果我添加一个数字,它说这是正确的

var patron = /[a-zA-Z]/;
var regex = new RegExp(patron);
var v= "hello word 512";

if(v.match(regex))
{
//should not match but it does
}else
{
objInput.style.color = "red";
}

他们我试过这个:

 var patron = /[a-zA-Z\D]/;
var regex = new RegExp(patron);
var v= "hello word 512";

if(v.match(regex))
{
//should not match but still dont work
}else
{
objInput.style.color = "red";
}

而且,括号不匹配

 var patron = /[a-zA-Z\"\']/;
var regex = new RegExp(patron);
var v= "hello word 512";

if(v.match(regex))
{
//it match whenever the double quoute it followed by the single quoute'
}else
{
objInput.style.color = "red";
}

最佳答案

关于您提供的第一个示例,您的正则表达式 /[a-zA-Z]/ 检查输入字符串中的任何字符。因为它在您的输入字符串中找到了 h,所以它返回 true。您需要做的是在正则表达式中放置开始和结束 anchor ^$。新的正则表达式看起来像这样:

/^[a-zA-Z]+$/

您可以相应地更改所有正则表达式。
要匹配括号,您需要使用反斜杠对它们进行转义。 \( 将匹配 (,而 \) 将匹配 )

关于javascript - javascript中的正则表达式不匹配字符串中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15159277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com