Javascript 简单检查网络表单,以确保它包含数字和字母(而不是我的代码)

Javascript Simple check for webform to make sure it contains both numbers and letters (instead of my code)

本文关键字:代码 我的 数字 表单 网络 检查 简单 包含 确保 Javascript      更新时间:2023-09-26

我有这个代码:

if(address.length<=0)
{
msg.setAttribute("style", "color:red");
  msg.innerHTML='Please enter address';
  return false;
}

我想进行更改,以便检查网络表单是否同时包含数字和字母。你可以帮我吗?

非常感谢琼斯

p.s.:所以我想确保他们也输入街道名称和门牌号(例如:阳光街 24 号会很好,但如果他们忘记了门牌号,他们会收到消息)。

这看起来根本不像PHP。更像是JavaScript...这是在 JavaScript 中执行此操作的一种方法:

var re = /^'d+'s+'D+$/;
if (re.test(address)) {
    //We get here if the address is correctly formated
}
else {
    //We get here if the string is badly formated
}

正则表达式的工作方式如下:

  • ''d+ 与一个或多个数字匹配
  • ''s+ 与一个或多个空格匹配
  • ''D+ 匹配一个或多个字母

如果你想同时接受"24 Sunshine"和"Sunshine 24",你可以改用这个:

/^('d+'s+'D+)|('D+'s+'d+)$/

如果我们想更加安全并防止用户可能输入额外的尾随或前导空格,我们可以尾随字符串或使用此 ReGex:

/^'s*('d+'s+'D+)|('D+'s+'d+)'s*$/

除了正则表达式,这是一个非常好和清晰的解决方案,您可以使用这些php函数:

首先是ctype_alnum(),以检查您的字符串是否包含字母和数字,然后这在 ctype_alpha() 上,以防上述情况为 true,以检查用户是否忘记输入数字。如果您有兴趣,还有这个ctype_digit()用于检查用户是否错过了地址但提供了号码。

或者,如果您只想要一个正则表达式,它将完成这项工作:

 ^[a-zA-Z]([a-zA-Z-]+'s)+'d{1,4}