我想对HTML中的模式属性使用正则表达式。它用于检查输入的字符串是否为有效的印度移动电话号码(没有任何国家代码或任何内容)。
我使用了以下模式:
Contact No<input type="text" size="20px" placeholder="Mobile Number (10 digit number)" pattern="[7-9]{1,1}[0-9]{9,9}" name="contactno" required> 它验证了所有的移动号码。当您输入固定电话号码时,会出现问题。假设您输入一个班加罗尔号码,例如,08067546754。它仍然验证这一点,因为它认为它从8开始,而不是0。因此,像070,080和090这样的州代码被认为是有效的。
有更精确的表达方式吗?提亚
发布于 2015-05-12 15:10:20
使用"7-9{1,1}0-9{9,9}“的模式按预期工作。它匹配源字符串"08067546754“中的子字符串"8067546754”,这是完全有效的行为。
示例中的Regex模式不包括字符串的开始和结束,它需要更改为:
^[7-9]{1,1}[0-9]{9,9}$此外,如果需要匹配前导零,则需要将字符类7-9改为如下所示:
^[0789]{1,1}[0-9]{9,9}$https://stackoverflow.com/questions/30194567
复制相似问题