我想把天、月和年分成三个不同的组,这样我就知道组=年份,group1 =月份,group2 =天。
Ano == Year, Anos == Years<br>
Mes == Month, Meses == Months<br>
Dia == Day, Dias == Days<br><br>输入:
1 ano 12 meses 1 dia
2 anos
1 ano
1 mes
1 dia
2 meses 1 dia
1 mes 3 dias
3 dias下面是我尝试过的模式:
([0-9]+)ano*([0-9]+)mes*([0-9]+)dia
需要输出:
1 12 1
2
1
1
1
2 1
1 3
3 活生生的例子:
发布于 2014-08-29 18:56:19
(?:(\d+) anos?)?(?:(?:^| )(\d+) mes(?:es)?)?(?:(?:^| )(\d+) dias?)?上述模式将有效。您还需要使用多行标志(m)。
下面是一个例子:http://regex101.com/r/wA6xJ2/1
发布于 2014-08-29 18:59:26
你可以试试下面的正则表达式,
(?:(\d+)\s*ano\S*)?(?:\s*(\d+)\s*mes\S*)?(?:\s*(\d+)\s*dia\S*)?演示
https://stackoverflow.com/questions/25574492
复制相似问题