我有一个正则表达式,它找到以下任何格式的字符串模式
28.05.2018 SB RS CS
28-05-2018 SB RS CS
28/05/2018 SB RS CS
正则表达式将第一个示例与日期中的句点匹配,但与第二个和第三个示例的日期中的破折号和正斜杠不匹配。
任何人都可以建议如何更正正则表达式,使其与短划线或正斜杠匹配?
非常感谢任何帮助。
该脚本是Adobe javascript的一部分。
var re = new RegExp(
"\\d{1,2}[\\-\\/\\.]\\d{1,2}[\\-\\/\\.]\\d{2,4}\\s([A-Z]{2,5})\\s([A-Z]{2,5})\\s([A-Z]{2,5})"
);
答案 0 :(得分:1)
您可以使用以下正则表达式:
\d{1,2}[/.-]\d{1,2}[/.-]\d{2,4}\s([A-Z]{2,5})\s([A-Z]{2,5})\s([A-Z]{2,5})
注意:
你真的很接近,在一个角色类中,你不需要逃脱破折号(如果你把它放在类定义的末尾)和点。
console.log("test 28.05.2018 SB RS CS test 28-05-2018 SB RS CS abc 28/05/2018 SB RS CS 123".match(/\d{1,2}[/.-]\d{1,2}[/.-]\d{2,4}\s([A-Z]{2,5})\s([A-Z]{2,5})\s([A-Z]{2,5})/g));