我有那段代码:
(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))
检查
1)年份是数字,从19或20开始,
2)月份是数字,在01-12和
之间3)日期是01-29之间的数字,或
b)如果月份值不是02或
,则为30c)31如果月份值是01,03,05,07,08,10或12
之一来自第http://html5pattern.com/Dates页
我试图移动代码的某些部分,但是这段代码无法工作......即使我试图找到一些说明我该怎么做。但我无法处理......
如何获得与上述代码类似的结果,但格式为:
DD.MM.YYYY
是否有可能在字段中添加点,用户只能输入没有点的数字? (我的意思是每次都会出现点数)
感谢您的帮助。
抱歉我的英文。
答案 0 :(得分:0)
我认为这是你正在寻找的东西:
(?:(?:0[1-9]|1[0-9]|2[0-9])\.(?:0[1-9]|1[0-2])|(?:30)\.(?:(?!02)(?:0[1-9]|1[0-2]))|(?:31)\.(?:0[13578]|1[02]))\.(?:19|20)[0-9]{2}
还尝试了一些可能的测试用例并且工作正常:
答案 1 :(得分:0)
您可以使用输入掩码插件来代替您所要求的一些内容。
我想到的一个受欢迎的是Robin Herbots:https://github.com/RobinHerbots/Inputmask
您可以在此处找到其网页上的演示:https://robinherbots.github.io/Inputmask/index.html
将插件实现到页面后,只需为它们建立正确的输入标记和jquery即可。例如:
您的电话号码脚本将是以下内容:
<script type="text/javascript">
$("#Phone").inputmask({mask: "999.999.9999"});
</script>
您应该查看相关文档。