-3

对于所有这些示例,我需要一个正则表达式:

<319/319hp ***....... 2377860/7094952 87/88mv 2019c 112s 52g 5m> Jadlodajnia [ Wyjscie ] 4
<319/319hp .......... 2377860/7094952 87/88mv 2019c 112s 52g 5m> Ulica Glowna [ E Jadlodajnia W ] 7
<319/319hp ******.... 2377860/7094952 86/88mv 2019c 112s 52g 5m> Ulica Glowna [ E Sklep W ] 7
<319/319hp ********** 2377860/7094952 86/88mv 2019c 112s 52g 5m> Ulica Glowna [ E Sklep W ] 7

在所有这些例子中,我想得到2377860价值,但我不知道如何做到这一点。

4

3 回答 3

1

大概是这样的:

[*.] (\d+)\/\d+

匹配句点或星号、空格、一个或多个数字、一个正斜杠和一个或多个数字。第一个捕获组是您所追求的。

你当然可以根据你想要变得多么挑剔来缩短或延长这个时间,但我通常会谨慎行事。

例子

于 2013-07-02T22:22:33.903 回答
1

你可以尝试类似的东西

" (\d{7})/"

一个空格,后跟 7 位数字,然后是 /

于 2013-07-02T22:26:32.407 回答
1

您可以使用以下内容(由于您使用 PCRE 引擎,它应该可以工作):

(?<=[.*] )\d+(?=/)

它将仅匹配数字。

在线演示在这里。

如果您的语言不支持后视(但支持),您必须使用:

[.*] (\d+)(?=/)

并与第一组($1)一起工作。

演示在这里。

于 2013-07-02T22:29:08.737 回答