1

有数据样本,我需要找到正确的正则表达式来适合所有样本

1) NG277 5.5x13/4x100 D73.1 ET38 BKF = 5.5x13/4x100 D73.1 ET38
2) MC7/B 7x17/5x114.3 D70.6 ET54 Silver = 7x17/5x114.3 D70.6 ET54
3) S 7 Modify 7.5x18/5x112 D73 ET42 Silver = 7.5x18/5x112 D73 ET42
4) MK-Course Mod.08 7.5x18/5x100 D56.1 ET55
5) Fever-5R 8x18/5x120 D74.1 ET15 Black Mirror
6) R6162 9x20/5x108 D67.1 ET40 S
7) 35 Anniversary 8x18/5x120 ET34 Black
8) Lounge 8 & 10 8x18/5x110 D75 ET38 Black
9) RSL 5068TL 8.5x18/5x112 D71.6 ET40 MLB
10 Килиманджаро-5-оригинал 6x15/5x114.3 D67.1 ET52.5
11) RK L31F 6x15/4x100 D54.1 ET48 S
12 X-113 7x17/5x115 D70.1 ET41 BK/FP

我需要删除所有内容,直到 5x13 或 7.5x13 等值以及 ET38 ET55 等值之后的所有内容。这是我^[-+!\sА-яа-яA-zA-Z]*|[-\sА-яа-яA-zA-Z]*$的正则表达式,但它不能正常工作。我希望有人能帮忙。

4

2 回答 2

1

此正则表达式将匹配您的行并为您要保留的部分创建一个捕获组:

^.*?([\d.]+\s*(x|х)\s*[\d.]+\s*\/.*ET-?\d+).*$
                 ^ note that this x is actually unicode code point U+0445
                                               (CYRILLIC SMALL LETTER EF)

只需输入此作为您的搜索词并输入第一个捕获组(通常表示为 \1)作为您的替换。

看看它在行动:http ://regex101.com/r/xW8lG7

在记事本++ 中只需使用搜索-> 替换。启用正则表达式,输入正则表达式并替换为 $1。

于 2013-08-17T15:12:29.177 回答
0

在记事本++中,您可以执行以下操作:

search: ^.+?(\d+(?:\.\d+)?x\d+(?:\.\d+)?.+?ET\d+).+?$
replace with: $1
于 2013-08-18T10:48:56.937 回答