Приветствую друзья! Подскажите пожалуйста как решить данную задачу. Имеется список из наименований автомобилей, которые содержат информацию о гос. рег знаках, однако в разбросанном виде. Пример прилагается. Необходимо из этих наименований отобрать лишь гос. рег. номер. Как можно решить? __________________________________________ Дублирую содержание примера.
Нужен список марок авто. Формула массива, вводится тремя клавишами: =СЖПРОБЕЛЫ(ПОДСТАВИТЬ(ЕСЛИОШИБКА(ПОДСТАВИТЬ(A1;ПРОСМОТР(2;1/(ПОИСК($E$1:$E$4;A1));$E$1:$E$4););A1);"гос. №";))
Спасибо за отзыв! Но я не понял почему нужен список марок автомобилей?
P.S. У всех данных которые нужно вывести есть отличительная особенность, они имеют следующую структуру: ? ### ?? где, ? - любая одна буква # - любая одна цифра
Function Госномер(x As String)
Static re As Object
If re Is Nothing Then
Set re = CreateObject("vbscript.regexp")
re.ignorecase = True
re.Pattern = "[а-я] \d{3} [а-я]{2} \d{2,3}"
End If
For Each Госномер In re.Execute(x)
Exit For
Next
If IsEmpty(Госномер) Then Госномер = ""
End Function
Можно при желании учесть, что не все буквы могут входить в номер, и второе число если трехзначное, то начинается с 1.
Казанский написал: есть отличительная особенность,
Вот это нужно было сразу написать. Догадываться?
Цитата
они имеют следующую структуру: ? ### ??
А в Вашем примере еще 2-3 цифры справа. Тоже догадываться? Или пример результата неправильный, или шаблон не тот. Как спросили, так и получили... Правильно заданный вопрос - уже половина ответа.
На автомобильных номерных знаках в России используются только те буквы, которые присутствуют и в кириллице, и в латинице. Таких букв только 12 — А, В, Е, К, М, Н, О, Р, С, Т, У, Х.