RegEx匹配MM / YYYY

时间:2015-10-02 19:10:47

标签: asp.net regex

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匹配?

3 个答案:

答案 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