Regular Expressions 101

Community Patterns

Product model ID extractor

1

Regular Expression
Python

r"
(?: \A | (?<= [\s\xA0\(\[\{])) (?P<MODEL> (?: (?: [A--Я]{4,6} (?! [\s\xA0] ) | (?! (?: D-Link | D-LINK | Asus | ASUS | USB ) [\s\xA0] ) [A--Я]{1,4} (?: \d [A--Я\d]{0,4} )? | \d{2,5} (?= [\-/] ) ) (?: (?! \s\d{1,2} - (?: Port | PORT ) ) [\s\xA0\-/\.] (?: \d{1,4} [A--Я\d]{0,4} | [A--Я]{1,4} [\-/]? \d{1,4} \w{0,8} | [A--Я] \w{3,6} ) (?: [\-/] [A--Я\d]{1,3} )? ){1,4} | \d{1,4} (?! [\s\xA0] USB [\s\xA0] ) [\s\xA0]? (?! [kкKК]? (?: [WВAА] | В[Тт] | W[Tt] | Ватт | Watts? | Амп | Amp | Ампер | Ampers? ) \b ) [A--Я] [A--Я\d]{0,5} | [A--Я]{1,4} \d [A--Я\d]{0,10} ) (?: [\-/] \w{1,6} (?: [\-/] \d{1,3} )? | (?: [\s\x0A] [A--Я\d]{1,5} (?: [\-/] [A--Я\d]{1,5} ){0,2} ){1,3} )? (?: \+ | [\s\xA0] (?: Plus | PLUS | Плюс | ПЛЮС) )? (?: [\s\xA0]? \( [A--Я\d\-/]{1,18} \) )? ) (?= \Z | [\s\xA0,\.\)\}\]] | (?<= \) ) [:;\-/] )
"
xu

Description

Extracts a model ID from a product title. Like this:

"Автомагнитола ALPINE CDE-100EUB/4S белая" -> "CDE-100EUB"

Over 80 tests.

Submitted by anonymous - 9 years ago