Regex 正则表达式前瞻替代方案

Regex 正则表达式前瞻替代方案,regex,Regex,我有以下字符串: 30.03.2014 我需要一个正则表达式,它给了我这一部分: 03 我不允许使用lookahead,因为它不受支持。 表达式应该只返回“.”之间的字符串。 我的表达是: \.(.*?)\. 抓住点之间的字符串,包括点: .03. 我不希望结果中出现点。这就是我测试它的地方: 谢谢。首先,您可以将(.*)替换为(\d+) 下一件事是您的正则表达式工作正常,您只需要获得匹配的组(例如在PHP中,它将是$matches[1])。您在演示中看到的是与regex匹配的整个字符串

我有以下字符串:

30.03.2014
我需要一个正则表达式,它给了我这一部分:

03
我不允许使用lookahead,因为它不受支持。 表达式应该只返回“.”之间的字符串。 我的表达是:

\.(.*?)\.
抓住点之间的字符串,包括点:

.03.
我不希望结果中出现点。这就是我测试它的地方:


谢谢。

首先,您可以将
(.*)
替换为
(\d+)


下一件事是您的正则表达式工作正常,您只需要获得匹配的组(例如在PHP中,它将是
$matches[1]
)。您在演示中看到的是与regex匹配的整个字符串(即,
$matches[0]
),而不仅仅是您指定的
[1]
组。

您使用的方法是正确的。你现在所要做的就是使用你最喜欢的编程语言来获取括号中的内容。对于每种编程语言,都有不同的语法

您使用的是什么正则表达式风格?我的答案应该是“不要使用正则表达式进行解析”,并指出您使用的语言中的任何类型的日期库/对象,所以我最好不要发布它。;)另外,在使用RegExr时,将鼠标悬停在结果上并检查它作为“组”列出的内容,因为这是您的
()
组包装的内容。