[英]How to simplify this JavaScript regex?
我需要创建一个正则表达式,其结果将以太匹配一个可选的(数字或特定代码)和可选的“-”以及另一个可选的(数字或特定代码)不为空。
这是我拥有的正则表达式,它可以正常工作,但是我想简化一下:
/((\d+|xs|sm|md|lg|xl)|((\d+|xs|sm|md|lg|xl)-)|((\d+|xs|sm|md|lg|xl)-(\d+|xs|sm|md|lg|xl))|(-)|(-(\d+|xs|sm|md|lg|xl)))/
/* these should all work */
"34-56"
"-56"
"34"
"34-"
"-"
"xs-md"
"-lg"
"sm"
"md-"
/* these should not work */
"test"
"500px"
"16-max"
""
测试正则表达式: https : //regex101.com/r/Uz2fGE/2
试试这个!
((\d*|xs|sm|md|lg|xl|-){1}-?(\d*|xs|sm|md|lg|xl))?
参考: https : //developer.mozilla.org/ko/docs/Web/JavaScript/Guide/%EC%A0%95%EA%B7%9C%EC%8B%9D
*: >= 0
?: 0 or 1
(): pattern
\d: number
|: or
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.