Составлять шаблоны надо с пошаговым тестированием Начать лучше с поиска "общего корня" искомых строк Развивать успех влево и вправо Сначала пробовать более простые и очевидные способы Потом можно усложнить какие-то фрагменты
Разбирать готовый шаблон надо тоже "от корня" и активно (пробовать что-то убрать, переписать, дополнить) Важно все время следить за реакцией тестера
Обмен опытом.
Составлять шаблоны надо с пошаговым тестированием Начать лучше с поиска "общего корня" искомых строк Развивать успех влево и вправо Сначала пробовать более простые и очевидные способы Потом можно усложнить какие-то фрагменты
Разбирать готовый шаблон надо тоже "от корня" и активно (пробовать что-то убрать, переписать, дополнить) Важно все время следить за реакцией тестераv__step
С уважением, Владимир
Сообщение отредактировал v__step - Вторник, 20.12.2011, 12:07
Господа! Все вопросы про Word далее будем обсуждать в новой ветке форума MS Excel и сопутствующие приложения Серж, может и здесь пора уже почистить топик? Всё основное, что касается поиска-замены в Ворде, я перенёс в ту ветку, где это не оффтоп.
Господа! Все вопросы про Word далее будем обсуждать в новой ветке форума MS Excel и сопутствующие приложения Серж, может и здесь пора уже почистить топик? Всё основное, что касается поиска-замены в Ворде, я перенёс в ту ветку, где это не оффтоп.Alex_ST
Не, Володя, я так больше не играю... Опять искать по всем листам, что именно ты чуть подправил я уже устал. А искать приходится, т.к. в твоих тестерах я уже надобавлял своих самопальных примеров и пояснений, которые потерять не хочется. Да и к тому же ты напрочь игнорируешь замечания по найденным опечаткам и предложения по улучшению.
Ведь про \s \S описание на листе "Метасимволы+" так и не подправил: \s Любой пробельный символ кроме неразрывных пробелов, включая табуляцию, перевод строки, возврат каретки, перевод страницы. Эквивалентно [ \f\n\r\t\v] \S Любой ВИДИМЫЙ символ или неразрывный пробел (любой непробельный символ). Эквивалентно [^ \f\n\r\t\v] и там же опечатка в примере в ячейке С8: написано "\S" для "а б" соотв. "а" , а должно быть "\S" для "а б" соотв. "аб" Да и на совет про добавление Application.ScreenUpdating = False … Application.ScreenUpdating = True и раскомментирование .ColorIndex = 41 в Public Sub HighlightMatches ты тоже забил... И на реплику про неудобный разделитель-перечислитель элементов коллекции Optional Разделитель As String = ";" в Function fRegExMatches (; легко спутать со стандартным знаком пунктуации и я предлагал вместо него испоьлзовать вертикальную черту | ) И про условное форматирование для выявления непустых ячеек, в которые функция возвращает пробел …
Сейчас найду время, крайний раз подправлю (что понимаю, конечно), полирну Public Sub HighlightMatches , добавлю примеры игнорирования поиска неразрывных пробелов и нахождения переносов строк вместо пробелов. А потом могу скинуть сюда твои же примеры если ты дашь на это согласие (всё-таки копирайт-то твой).
Не, Володя, я так больше не играю... Опять искать по всем листам, что именно ты чуть подправил я уже устал. А искать приходится, т.к. в твоих тестерах я уже надобавлял своих самопальных примеров и пояснений, которые потерять не хочется. Да и к тому же ты напрочь игнорируешь замечания по найденным опечаткам и предложения по улучшению.
Ведь про \s \S описание на листе "Метасимволы+" так и не подправил: \s Любой пробельный символ кроме неразрывных пробелов, включая табуляцию, перевод строки, возврат каретки, перевод страницы. Эквивалентно [ \f\n\r\t\v] \S Любой ВИДИМЫЙ символ или неразрывный пробел (любой непробельный символ). Эквивалентно [^ \f\n\r\t\v] и там же опечатка в примере в ячейке С8: написано "\S" для "а б" соотв. "а" , а должно быть "\S" для "а б" соотв. "аб" Да и на совет про добавление Application.ScreenUpdating = False … Application.ScreenUpdating = True и раскомментирование .ColorIndex = 41 в Public Sub HighlightMatches ты тоже забил... И на реплику про неудобный разделитель-перечислитель элементов коллекции Optional Разделитель As String = ";" в Function fRegExMatches (; легко спутать со стандартным знаком пунктуации и я предлагал вместо него испоьлзовать вертикальную черту | ) И про условное форматирование для выявления непустых ячеек, в которые функция возвращает пробел …
Сейчас найду время, крайний раз подправлю (что понимаю, конечно), полирну Public Sub HighlightMatches , добавлю примеры игнорирования поиска неразрывных пробелов и нахождения переносов строк вместо пробелов. А потом могу скинуть сюда твои же примеры если ты дашь на это согласие (всё-таки копирайт-то твой).Alex_ST
И ещё: на листе "Метасимволы+" в ячейке А5 у тебя написано: Любой символ за исключением ?*+.|\[()^$ []\^$.|?*+() а разве должно быть не так: Любой символ за исключением?*+.|\[()^$
И ещё: на листе "Метасимволы+" в ячейке А5 у тебя написано: Любой символ за исключением ?*+.|\[()^$ []\^$.|?*+() а разве должно быть не так: Любой символ за исключением?*+.|\[()^$Alex_ST
Извини, Володя, но что-то я тебя перестал понимать на последних постах. Наверное, кто-то из нас переутомился или перестал относиться к теме серьёзно. При таком подходе я, наверное, из топика буду вынужден отвалить со всем багажом знаний уже здесь от тебя полученных, а тему бросим недобитой.
Извини, Володя, но что-то я тебя перестал понимать на последних постах. Наверное, кто-то из нас переутомился или перестал относиться к теме серьёзно. При таком подходе я, наверное, из топика буду вынужден отвалить со всем багажом знаний уже здесь от тебя полученных, а тему бросим недобитой. Alex_ST
Пост с задачей уже удалил Прекращаю пополнения примеров шаблонов и вообще все отклонения от прямой задачи Сегодня вечером учту все твои замечания до единого!
Пожалуйста, только не это!
Пост с задачей уже удалил Прекращаю пополнения примеров шаблонов и вообще все отклонения от прямой задачи Сегодня вечером учту все твои замечания до единого!v__step
С уважением, Владимир
Сообщение отредактировал v__step - Среда, 21.12.2011, 10:55
Леш, ты че разбурчался? По себе знаю, такие вещи делаются от души и по вдохновению. А кроме этого могут быть и другие заботы, текучка, наморк, похмелье и т.д. А ты прям как "Прапорщик, остановите поезд - Поезд стой - раз, два!". И спешка тут ни к чему. Иначе потом в готовое прийдется поправки(а все равно прийдется, всего не учтешь, наш мужик задним умом крепок) сотнями делать.
Леш, ты че разбурчался? По себе знаю, такие вещи делаются от души и по вдохновению. А кроме этого могут быть и другие заботы, текучка, наморк, похмелье и т.д. А ты прям как "Прапорщик, остановите поезд - Поезд стой - раз, два!". И спешка тут ни к чему. Иначе потом в готовое прийдется поправки(а все равно прийдется, всего не учтешь, наш мужик задним умом крепок) сотнями делать.KuklP
Ну с НДС и мы чего-то стoим! kuklp60@gmail.com WM Z206653985942, R334086032478, U238399322728
Серёга, мне просто очень не нравятся топики, состоящие из множества страниц… На них фиг чего найдёшь. А мы тут уже на шестую страницу перевалили. Я же не просто так просил Сержа почистить топик... В этой налитой здесь "воде" смысла от силы на 3 страницы, а остальное - флуд! Вот я очередной раз причесал последний Володин файл. Я там специально применил моноширинный шрифт DejaVu Sans Mono и УФ чтобы были видны пробелы и глаз не цеплялся за засечки (Serif) на буквах. Я его у себя и в VBE поставил вместо Courier. Очень здорово. К стати, в DejaVu Sans Mono 0 и О не перепутаешь, т.к. 0 там внутри перечёркнут (помните как раньше это всегда делали в ассемблере?)
В доработанном файле кроме шрифта и УФ внесены исправления в комментарии к примерам, добавлено несколько примеров, поясняющих, что фильтруют \s \S А кроме того, на листе "Метасимволы+" теперь есть 2 ячейки, в которых можно задать нравящиеся юзеру разделители для тестеров.
Кто скачивал, извините, я в 16:10 перезалил файл! Там была ошибка в коде и несколько опечаток в тексте.
Серёга, мне просто очень не нравятся топики, состоящие из множества страниц… На них фиг чего найдёшь. А мы тут уже на шестую страницу перевалили. Я же не просто так просил Сержа почистить топик... В этой налитой здесь "воде" смысла от силы на 3 страницы, а остальное - флуд! Вот я очередной раз причесал последний Володин файл. Я там специально применил моноширинный шрифт DejaVu Sans Mono и УФ чтобы были видны пробелы и глаз не цеплялся за засечки (Serif) на буквах. Я его у себя и в VBE поставил вместо Courier. Очень здорово. К стати, в DejaVu Sans Mono 0 и О не перепутаешь, т.к. 0 там внутри перечёркнут (помните как раньше это всегда делали в ассемблере?)
В доработанном файле кроме шрифта и УФ внесены исправления в комментарии к примерам, добавлено несколько примеров, поясняющих, что фильтруют \s \S А кроме того, на листе "Метасимволы+" теперь есть 2 ячейки, в которых можно задать нравящиеся юзеру разделители для тестеров.
Кто скачивал, извините, я в 16:10 перезалил файл! Там была ошибка в коде и несколько опечаток в тексте.Alex_ST
Отдыхай! Примеров ты написАл вполне достаточно. И пояснений к ним тоже. Дальше я сам дооформлю общий документ. А к тебе буду обращаться за консультацией.
Отдыхай! Примеров ты написАл вполне достаточно. И пояснений к ним тоже. Дальше я сам дооформлю общий документ. А к тебе буду обращаться за консультацией.Alex_ST
Примеры мы сочиняли вместе с дочкой (она у меня пишет стихи) - это ей спасибо Мы заготовили еще несколько красивых выражений на вечер, да бог с ними! "\S" для "а б" все-таки не соотв. "аб" - правильно "а"; "б" Если что-то было не так, не принимайте близко к сердцу Я всегда хочу как лучше
Примеры мы сочиняли вместе с дочкой (она у меня пишет стихи) - это ей спасибо Мы заготовили еще несколько красивых выражений на вечер, да бог с ними! "\S" для "а б" все-таки не соотв. "аб" - правильно "а"; "б" Если что-то было не так, не принимайте близко к сердцу Я всегда хочу как лучшеv__step
"\S" для "а б" все-таки не соотв. "аб" - правильно "а"; "б"
Ну, естественно! Спасибо за поправку. Если в твоей части работы всё (с учётом внесённых мною вчера коррекций), то я надеюсь (если не будет ещё одного завала на работе) до конца следующей недели закончить первый лист и сверстать общую книгу.
Quote (v__step)
"\S" для "а б" все-таки не соотв. "аб" - правильно "а"; "б"
Ну, естественно! Спасибо за поправку. Если в твоей части работы всё (с учётом внесённых мною вчера коррекций), то я надеюсь (если не будет ещё одного завала на работе) до конца следующей недели закончить первый лист и сверстать общую книгу.Alex_ST
Давай! В самом конце ты просто вырвал эту работу из моего болота!
Не будь категоричен с применением .ScreenUpdating - это деликатный вопрос, как и раннее-позднее связывание. Я пользуюсь им наряду с двумя другими "ускорителями" (.EnableEvents и .Calculation=xlCalculationAutomatic) в основном, для мощных макросов и с остророжностью. Готов обсудить отдельно
Я многому научился Я благодарен тебе за руку помощи Есть "регулярный" вход в нечеткий поиск
Давай! В самом конце ты просто вырвал эту работу из моего болота!
Не будь категоричен с применением .ScreenUpdating - это деликатный вопрос, как и раннее-позднее связывание. Я пользуюсь им наряду с двумя другими "ускорителями" (.EnableEvents и .Calculation=xlCalculationAutomatic) в основном, для мощных макросов и с остророжностью. Готов обсудить отдельно
Я многому научился Я благодарен тебе за руку помощи Есть "регулярный" вход в нечеткий поискv__step
Я вообще, работая в VBE, много пользуюсь автозаменой при вводе Punto Switcher'a. И там у меня, например, есть такие очень удобные замены: app-false заменяется на [vba]
Код
With Application: .ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False: .Calculation = xlManual: End With
[/vba] app-true заменяется на [vba]
Код
With Application: .EnableEvents = True: .DisplayAlerts = True: .ScreenUpdating = True: .Calculation = xlAutomatic: End With
[/vba]mbx[vba]
Код
MsgBox
[/vba]deb-pr[vba]
Код
Debug.Print
[/vba] и ещё несколько.
К стати, я ещё чуть подправил код нашей будущей книги. Там были перепутаны (мною ) ссылки на символы-разделители в fRegExSubMatches и ещё нужно чуть причесать код (убрать лишние процедуры, добавить волотильность функциям). Сделаю, наверное, часа через 2 и приаттачу к этому посту.
Я вообще, работая в VBE, много пользуюсь автозаменой при вводе Punto Switcher'a. И там у меня, например, есть такие очень удобные замены: app-false заменяется на [vba]
Код
With Application: .ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False: .Calculation = xlManual: End With
[/vba] app-true заменяется на [vba]
Код
With Application: .EnableEvents = True: .DisplayAlerts = True: .ScreenUpdating = True: .Calculation = xlAutomatic: End With
[/vba]mbx[vba]
Код
MsgBox
[/vba]deb-pr[vba]
Код
Debug.Print
[/vba] и ещё несколько.
К стати, я ещё чуть подправил код нашей будущей книги. Там были перепутаны (мною ) ссылки на символы-разделители в fRegExSubMatches и ещё нужно чуть причесать код (убрать лишние процедуры, добавить волотильность функциям). Сделаю, наверное, часа через 2 и приаттачу к этому посту.Alex_ST
С уважением, Алексей MS Excel 2003 - the best!!!
Сообщение отредактировал Alex_ST - Четверг, 22.12.2011, 10:50
Я вообще, работая в VBE, много пользуюсь автозаменой при вводе Punto Switcher'a.
С ума сойти! Здорово, никогда бы не додумался! По поводу общих настроек Application - должен быть очень надежный обработчик ошибок, чтобы при любом сбое чисто выйти
Quote (Alex_ST)
Я вообще, работая в VBE, много пользуюсь автозаменой при вводе Punto Switcher'a.
С ума сойти! Здорово, никогда бы не додумался! По поводу общих настроек Application - должен быть очень надежный обработчик ошибок, чтобы при любом сбое чисто выйтиv__step
Володя, научи: что-то никак не соображу, какой должен быть паттерн чтобы из стринга, где есть , например, Иванов Иванова Ивановы Иванович выбрать только те, в которых есть иванов и набор окончаний (например, ничего, а, ы, у, ым)? Т.е. выбрать Ивановых в нескольких падежах, но не выбирать Ивановича? Паттерн Иванов[а|ы|ым|у] теряет слово Иванов а Иванов[а|ы|ым|у]{0,2} прихватывает ещё и Ивановича
Володя, научи: что-то никак не соображу, какой должен быть паттерн чтобы из стринга, где есть , например, Иванов Иванова Ивановы Иванович выбрать только те, в которых есть иванов и набор окончаний (например, ничего, а, ы, у, ым)? Т.е. выбрать Ивановых в нескольких падежах, но не выбирать Ивановича? Паттерн Иванов[а|ы|ым|у] теряет слово Иванов а Иванов[а|ы|ым|у]{0,2} прихватывает ещё и ИвановичаAlex_ST
С уважением, Алексей MS Excel 2003 - the best!!!
Сообщение отредактировал Alex_ST - Четверг, 22.12.2011, 11:46
По поводу общих настроек Application - должен быть очень надежный обработчик ошибок, чтобы при любом сбое чисто выйти
ну, на эти грабли я уже несколько раз наступал и теперь всегда (ну, почти всегда ) проверяю, не сделан ли где-то после назначения Application.Calculation = xlManual On error … Exit sub в обход назначения Application.Calculation = xlAutomatic
Quote (v__step)
По поводу общих настроек Application - должен быть очень надежный обработчик ошибок, чтобы при любом сбое чисто выйти
ну, на эти грабли я уже несколько раз наступал и теперь всегда (ну, почти всегда ) проверяю, не сделан ли где-то после назначения Application.Calculation = xlManual On error … Exit sub в обход назначения Application.Calculation = xlAutomaticAlex_ST