我知道至少有十二个问题。我正在尝试使用正则表达式对街道地址的输入进行简单验证,从而检查输入项中至少两个空格。原因?在大多数情况下,我们的地址至少包含3个部分,街道编号,街道名称,类型(车道,行车路线,大街,大街等)

我要提醒用户,如果该条目至少与三个条目不匹配,如果它具有三个以上的空格,这意味着它在地址中具有更多名称,这很好,但是未达到最低要求则需要发出警告。我最近的努力在下面,但没有奏效。

  var addregex = new RegExp("^\d{1,6}\040([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^\d{1,6}\040([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^\d{1,6}\040([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$");

            if (addregex.test($(this).val())) {
                alert('is valid');
                address.addClass('isvalid');
                address.css("border", "1px solid lightgray");
            } else {
                address.css("border", "2px solid red");
                alert("Are you sure this is a valid street address?");
                address.focus();
            }

最佳答案

一个简单的测试就是您所需要的:/^\s*\S+(?:\s+\S+){2}/

07-27 17:56