|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - Выделить из строки обозначение(я) ГОСТ/ОСТ/ТУ |
|
VBA - Выделить из строки обозначение(я) ГОСТ/ОСТ/ТУ
|
Старожил Сообщения: 329 |
Собственно как это сделать? При условии того, что может быть записан с годом и без, слитно(ГОСТ1234/ТУ3846855469/ОСТ4Г0) и правильно (ГОСТ 1234/ ОСТ 4Г0/ ТУ 396476457). В строке может попадаться один или несколько раз или и ту и гост и ост.
Думал в сторону Mid , не знаю как сделать когда больше одного обозначения попадается. |
|
------- Отправлено: 21:44, 27-02-2019 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать blackeangel, я бы попробовал регулярками. А выложите всевозможные (в смысле не «все возможные», а разнообразные, какие встречались) образцы в тексте. Попробуем разобраться вместе.
|
Отправлено: 22:03, 27-02-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 329
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Ехал грека через реку ГОСТ1234-80 видит грека в реке рак ТУ 38-200-16-45-2001 сунул грека в реку руку ГОСТ 1234 рак за руку грека цап. Ехали медведи на велосипеде ОСТ 4Г0.010.016 пряники жуют. А комарики на воздушном шарике ТУ68758-448-93966-90, раки ОСТ107.016.322 на хромой собаке ГОСТ 1.2346-81 А за ними кот ОСТ 4Г0.016.019-2014 задом наперёд ТУ68958-458-93966 и смеётся. |
|
Отправлено: 21:24, 28-02-2019 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать blackeangel, попробуйте так (на WSH; думаю, перевод на VBA для Вас особых затруднений не составит):
Option Explicit Dim strContent Dim objMatch With WScript.CreateObject("VBScript.RegExp") .Pattern = "(ГОСТ|ГОСТ Р|ОСТ|ТУ) *?[\d\.\-Г]+\d" .IgnoreCase = True .Global = True With WScript.CreateObject("Scripting.FileSystemObject").OpenTextFile("C:\Мои проекты\0248\0001.txt") strContent = .ReadAll() .Close End With If .Test(strContent) Then For Each objMatch In .Execute(strContent) WScript.Echo objMatch.Value Next Else WScript.Echo "Nothing found." End If End With WScript.Quit 0 |
Отправлено: 22:38, 28-02-2019 | #4 |
Старожил Сообщения: 329
|
Профиль | Отправить PM | Цитировать Iska, за код спасибо.
Цитата:
Так же это касается инструкций. Суть в том что надо из составов технологических процессов выбрать всю документацию применяемую в предприятии.... |
||
------- Отправлено: 07:33, 01-03-2019 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата blackeangel:
Цитата blackeangel:
В общем, смотрите: если стоит задача собрать наиболее точную информацию — тогда только так. Если задача стоит немного иная — «На, и отъ@@@сь», тогда можно и тупо ограничиться только тем, что соберёт скрипт. |
||
Отправлено: 18:26, 01-03-2019 | #6 |
Старожил Сообщения: 329
|
Профиль | Отправить PM | Цитировать Iska,
Цитата:
Цитата:
|
||
------- Отправлено: 18:47, 01-03-2019 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать blackeangel, а внутри что? char, wchar, або какой-нибудь blob?
|
Отправлено: 19:47, 01-03-2019 | #8 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Выделить часть строки и отправить в переменную | Patroklos | Скриптовые языки администрирования Windows | 18 | 10-02-2018 17:58 | |
PowerShell - [решено] Выделить из строки текста слово определенной длины и записать в переменную | Grafitchic | Скриптовые языки администрирования Windows | 14 | 16-07-2014 12:23 | |
Офис и Текст - [решено] Как выделить строки с определенны символами | KooDI | Программное обеспечение Windows | 2 | 03-03-2013 14:27 | |
CMD/BAT - [решено] Выделить из текстового файла строки, содеражщие дату формата DD.MM.YYYY за указанный | jrd | Скриптовые языки администрирования Windows | 2 | 17-02-2012 16:57 | |
Сеть из 5 компов(3-е в сети,ост. по модему)??? | SvD | Сетевые технологии | 2 | 02-02-2005 11:05 |
|