我尝试设置符合以下条件的正则表达式:
hot 8,6,4,2,1,7
这是我到目前为止所使用的代码,但这些代码都不够具体:
^(hot)|(cold)|( )([8])
^(hot)|(cold)|([1-8])|(,\d{1})
以下是强制检查格式所需的要求:
[1-8]
hot
或cold
,则必须有空格和空格后面的8;例如,hot 8
或cold 8
对此的一些帮助将非常感激。提前谢谢!
答案 0 :(得分:0)
((热8,)|(冷8,))?(/ d,)+ / d
所以我可能错过了正确输入正则表达式符号,但我在电话上没有快速参考,但我知道规则存在,如果这有帮助。但解释基本上是..
“热空间数”或“冷空间数”(零或1次)然后和数字后面跟一个逗号(1次或更多次),然后是最后一个没有结束逗号的数字。
抱歉我的答案格式化...移动设备。
答案 1 :(得分:0)
您可以使用
Regex.IsMatch(s, @"^(?:hot|cold) 8(?:,[1-8])*$")
请参阅regex demo。
<强>解释强>:
^
- 字符串开头(?:hot|cold)
- hot
或cold
子字符串
8
- 空格和8
(?:,[1-8])*
- 零次或多次(*
)次出现:
,
- 逗号[1-8]
- 从1
到8
的数字(根据您的需要调整)$
- 字符串结束。