正则表达式包含特定数字之一
Regex contain one of specific numbers
假设我有这样的文字
11/2/2010 10
22/3/2009 20
30/4/2003 30
14/5/1994 40
5/6/2000 50
而且我只想在四月或二月的一天之后选择数字(在本例中,它表示“10”和“30”)。我试过:
\d+\/(2|4)\/\d+ (\d+)
但它还会捕获数字“2”和“4”作为第 1 组,然后在结果中捕获“10”和“30”作为第 2 组。
请帮忙!
P/S:我使用 pcre(php) 作为正则表达式风格
使用这个正则表达式:
\d+\/(?:2|4)\/\d+ (\d+)
通过添加 ?:
,您指定不想捕获群组 (2|4)
或者这里只是:
\d+\/[24]\/\d+ (\d+)
如果我理解正确的话:
^.*\/[24]\/.*?(?=\s)
出自:
11/2/2010 10
22/3/2009 20
30/4/2003 30
14/5/1994 40
5/6/2000 50
这将匹配:
11/2/2010
30/4/2003
假设我有这样的文字
11/2/2010 10
22/3/2009 20
30/4/2003 30
14/5/1994 40
5/6/2000 50
而且我只想在四月或二月的一天之后选择数字(在本例中,它表示“10”和“30”)。我试过:
\d+\/(2|4)\/\d+ (\d+)
但它还会捕获数字“2”和“4”作为第 1 组,然后在结果中捕获“10”和“30”作为第 2 组。
请帮忙!
P/S:我使用 pcre(php) 作为正则表达式风格
使用这个正则表达式:
\d+\/(?:2|4)\/\d+ (\d+)
通过添加 ?:
,您指定不想捕获群组 (2|4)
或者这里只是:
\d+\/[24]\/\d+ (\d+)
如果我理解正确的话:
^.*\/[24]\/.*?(?=\s)
出自:
11/2/2010 10
22/3/2009 20
30/4/2003 30
14/5/1994 40
5/6/2000 50
这将匹配:
11/2/2010
30/4/2003