我仍在尝试学习如何格式化我自己的表达式......所以我在试图弄清楚这个时遇到了问题。谁能帮我找到这个油重格式的正则表达式:10W-30 或 0W-30。
基本上,第一个数字可以是两位数或一位,后跟字母 W 和一个破折号……最后两个字符必须是两位数。
因此,如果 x 是数字:xW-xx 或 xxW-xx。
我自己还在研究它......但任何人都可以帮助我真的很感激。谢谢。
这是我到目前为止所拥有的:
/^([0-9]){1,2}[W]-{2,2}$/
我错过了什么吗?
我仍在尝试学习如何格式化我自己的表达式......所以我在试图弄清楚这个时遇到了问题。谁能帮我找到这个油重格式的正则表达式:10W-30 或 0W-30。
基本上,第一个数字可以是两位数或一位,后跟字母 W 和一个破折号……最后两个字符必须是两位数。
因此,如果 x 是数字:xW-xx 或 xxW-xx。
我自己还在研究它......但任何人都可以帮助我真的很感激。谢谢。
这是我到目前为止所拥有的:
/^([0-9]){1,2}[W]-{2,2}$/
我错过了什么吗?
\d
将匹配数字,所以你只想做这样的事情:
('10W-30').match(/^(\d{1,2})W-(\d{2})$/)
// => ["10W-30", "10", "30"]
这是一个非常简单的正则表达式,请查看W3 文档以了解如何实现它。
[0-9]{1,2}W-[0-9][0-9]
快速解释这里发生的事情:
W
不是一个正则表达式字符命令,所以你可以像白天一样把它放在里面。现在快速回顾一下,正则表达式匹配任何两位数字,后跟一个大写字母W
现在正则表达式的其余部分很容易弄清楚,因为连字符又不是特殊字符,而且您已经知道方括号在做什么。