为此模式编写正则表达式时遇到问题
Having trouble writing regular expression for this pattern
我有以下模式:
4/24
8/14/23
3/5/9/21
"/"的左侧是 1-23 之间的数字范围"/"的右边也是一个介于 1-23 之间的数字范围。请注意,"/##"可以重复多次。
我尝试了这个正则表达式,但它不起作用:
var move = "2/11/23";
var r = new RegExp("^([1-9]|1[0-9]|2[0-3])(/([1-9]|1[0-9]|2[0-3])+)$", "g");
var result= move.match(r);
但它不起作用。
谁能帮我修改它才能工作。
谢谢!
我想这就是你想要的:
^(?!'/)((^|'/)(2[0-3]|1[0-9]|[1-9]))+$
演示:https://regex101.com/r/nG9oY0/1
由于从这个问题中不清楚解决方案是否必须使用正则表达式......
就个人而言,我不建议不使用此任务的正则表达式。我会发现这样的函数更容易使用:
function processDate(string) {
var tokens = string.split('/');
return {
tokens: tokens,
isValid: tokens.every(function(token) {
var num = parseInt(token, 10);
return 1 <= num && num <= 23;
})
};
}
var x = "4/24"
var y = "8/14/24"
var z = "3/5/9/21"
console.log(processDate(x).isValid); // true
console.log(processDate(y).isValid); // false
console.log(processDate(z).isValid); // true
console.log(processDate(x).tokens); // ["4", "24"]
console.log(processDate(y).tokens); // ["8", "14", "24"]
console.log(processDate(z).tokens); // ["3", "5", "9", "21"]
相关文章:
- 将PHP变量传递给jQuery时遇到问题
- 将jQuery转换为用户脚本的普通Javascript时遇到问题
- 将子文档推送到父数组时遇到问题
- JQuery FullCalendar在从ajax成功调用rerenderEvents时遇到问题
- 在将javascript附加到我的html中时遇到问题
- 为什么我在以编程方式打开窗口时遇到问题
- 在将缩略图链接到模态时遇到问题
- 使用 ng 模型获取数据时遇到问题
- 是否有其他人在设计Twitter Typeahead时遇到问题'的搜索栏
- 使用jquery进行整数比较时遇到问题
- 使用PhantomJS下载动态web内容时遇到问题
- 设置RequireJS时遇到问题
- 让Javascript在SharePoint 2010上运行时遇到问题
- I'我在react.js中编写for循环时遇到问题
- 通过jQuery获取上传的文件名时遇到问题
- 我在启动我的节点时遇到问题.js IRC 机器人
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- 从谷歌地图自定义控件打开离子模态时遇到问题
- 在使用 YAML 和 Google App Engine 时遇到问题
- 在 Chrome 扩展程序中将鼠标悬停在广告上使用时遇到问题