Javascript验证正则表达式不起作用
Posted
技术标签:
【中文标题】Javascript验证正则表达式不起作用【英文标题】:Javascirpt validation regex does not work 【发布时间】:2021-06-18 06:12:36 【问题描述】:我只是不知道为什么这种模式不起作用。似乎一切都是正确的,我没有我所缺少的。每次它都属于其他部分,我不知道为什么。
var adresaFormat = /^[A-ZČĆŽŠĐ][a-zčćžšđ]+([ ][A-ZČĆŽŠĐa-zčćžšđ][a-zčćžšđ]+)+[0-9]1,3$/;
document.getElementById("adresa").addEventListener("blur",function()
if(adresaFormat.test(document.getElementById("adresa").value))
document.getElementById("adresa").style.backgroundColor="#ffffff";
document.getElementById("adresa").style.border="1px solid #c2c2c2";
else
document.getElementById("adresa").style.backgroundColor="#ff0000";
document.getElementById("adresa").style.border="1px solid #ff0000";
);
【问题讨论】:
能否提供您用于测试的示例字符串? 当然。 “未知街道 2” 请发MCVE 好吧,在发布的代码中不可见的所有内容都是字段的类型。它是文本。 regexper.com 会告诉你原因 【参考方案1】:您缺少第二个单词和数字之间的空格。
//Before
var adresaFormat = /^[A-ZČĆŽŠĐ][a-zčćžšđ]+([ ][A-ZČĆŽŠĐa-zčćžšđ][a-zčćžšđ]+)+[0-9]1,3$/;
console.log(adresaFormat.test("Unknown street 2"));
//After
adresaFormat = /^[A-ZČĆŽŠĐ][a-zčćžšđ]+([ ][A-ZČĆŽŠĐa-zčćžšđ][a-zčćžšđ]+)[ ]+[0-9]1,3$/;
console.log(adresaFormat.test("Unknown street 2"));
我希望这就是你要找的。p>
【讨论】:
没错!我不知道我怎么没有立即看到。非常感谢!以上是关于Javascript验证正则表达式不起作用的主要内容,如果未能解决你的问题,请参考以下文章