我function some_function($this) {
if ($this == 1) {
echo 'that';
}
} // When this is typed, the opening bracket would automatically flash
匹配^((0[1-9])|(1[0-2]))\/(\d{4})$
。
但是,它与MM/YYYY
不匹配。
除了9/2015
之外,我需要更改哪些内容才能使其与9/2015
匹配?
答案 0 :(得分:2)
在0
之后加上问号^((0?[1-9])|(1[0-2]))\/(\d{4})$
答案 1 :(得分:1)
不会9/2015
,因为这与您的格式不匹配MM/YYYY
如果您想匹配M/YYYY OR MM/YYYY
,您应该使用类似的内容
^(0[1-9]|1[0-2]|[1-9])/(\d{4})$
答案 2 :(得分:1)
你需要使零可选并摆脱不必要的捕获组:
^(0?[1-9]|1[0-2])/\d{4}$
^
请参阅https://jsfiddle.net/Esko/0bt93Lba/
请注意,?
量词含义与前面的子图案匹配0次或更多次。因此,0
将匹配一次,或者空字符串将为正则表达式引擎匹配。
有关正则表达式中量词的更多详细信息,请参阅regex demo。