2

在我在 iOS 模拟器中测试它之前,我有一个有效的日期正则表达式。显然,iOS 需要月份名称(例如:Jan)、两位数日期和四位数字。

我是正则表达式的新手,但这是我的尝试,但没有成功。

/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)\s\d{2},\d{4}$/;
4

2 回答 2

2

试试这个/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/mm/dd/yyyy

对于 dd/mmm/yyyy

^(([0-9])|([0-2][0-9])|([3][0-]))\/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\/\d{4}$

于 2012-11-09T15:49:40.443 回答
1

您的表达式接受如下字符串:

jan 12,2012 // works
Jan 12,2012 // doesn't work!

注意大写的 J。正则表达式区分大小写,也许这就是它不适合你的原因。

尝试这样的事情:

/^((j|J)an|(f|F)eb|(m|M)ar|(a|A)pr|(m|M)ay|(j|J)un|(j|J)ul|(a|A)ug|(s|S)ep|(o|O)ct|(n|N)ov|(d|D)ec)\s\d{2},\d{4}$/

你必须定义月份吗?如果你有更多的灵活性试试这个:

/^[a-zA-Z]{3}\s\d{2},\d{4}$/
/[a-zA-Z]{3}\s\d{2},\d{4}/     // works also

这是一个很好的网站,我用它来测试我的正则表达式: RegexPal

问候

于 2012-11-09T16:04:17.913 回答