формата:
FORD ESCORT 16V CLASSIC У 305 ОС - 26
CHERY S 21 У 117 НН - 26
ЛАДА 217010 LADA PRIORA В 667 ЕР - 126
нужно получить из этой каши номерной знак с регионом:
У 305 ОС - 26
У 117 НН - 26
В 667 ЕР - 126
помогите люди добрые написать регулярку 😥
Закиньте попытку на play.golang.org, чтобы там проще было редактировать
Для меня регулярки тёмный лес, я пытался делать без них, но вспомнил что можно регуляркой, по этому прошу помощи.
Проще всего помогать тем, кто пытается 🙂 Покажите как пытались, на play.golang.org
пф, изи
Как вариант - строку сплит по пробелу и последние 5 элементов вернуть
https://play.golang.org/p/JGzhf8Y78VZ
Это топорный вариант который я сделал, но, очень много факторов влияет, малейшее отклонение у входных данных = ошибка.
https://regex101.com/r/qsdugI/1
[АВЕКМНОРСТУХ]\s*\d{3}\s*[АВЕКМНОРСТУХ]{2}\s*-\s*\d{2,3}
тут не обязательно использовать регулярки. Можно использовать пакет FMT
Работает, но если в входных данных меняется условие, например бывают данные без марки авто, а только номерной знак, то не находит. Но огромное спасибо тебе!
Этот вариант отлично работает в любых условиях, огромная благодарность!
ну раз алфавит номерной, то можно было бы и регионы номерные парсить)) [179]?\d{2}
Для трёхзначных кодов в качестве первой цифры сначала разрешалось использовать только единицу, с 2013 года — 1 и 7, а с лета 2020 года — любую цифру, кроме нуля[
`[АВЕКМНОРСТУХ]\s*\d{3}\s*[АВЕКМНОРСТУХ]{2}\s*-\s*[1-9]?\d{2}`
ого, про любую кроме нуля не знал
Обсуждают сегодня