Попробуйте это:
Найти что: ([0-9]+),([A-Z]+[0-9]+)
Заменить: update [dbname].iwfs_part_search_tb set mdl_number='$2' where condensed_part_number = '$1';
Тогда, очевидно, убедитесь, что регулярное выражение проверяется.
Что происходит?
([0-9]+)
- paranthesis означает «группа захвата», [0-9]+
означает «один или несколько» любого числа.
,
- запятая, не в группе захвата или что-нибудь еще ... только запятая
([A-Z]+[0-9]+)
- другая группа захвата, содержит одну или несколько заглавных букв, за которыми следует одно или несколько номеров.
«Группы захвата» сверху могут быть использованы в поле «Заменить с» в Notepad ++ с помощью $
, за которым следует индекс этой группы. Первая группа ($1
) будет для группы чисел, существовавших до запятой, тогда как вторая группа ($2
) будет для группы букв и цифр, следующих за запятой.
Испытано:
011890111,MFCD00005493
011891232,MDAN00032492
011853233,MFCD00005444
011892121,MFCD
011812341,MAAS00005493
становится:
update [dbname].iwfs_part_search_tb set mdl_number='MFCD00005493' where condensed_part_number = '011890111';
update [dbname].iwfs_part_search_tb set mdl_number='MDAN00032492' where condensed_part_number = '011891232';
update [dbname].iwfs_part_search_tb set mdl_number='MFCD00005444' where condensed_part_number = '011853233';
update [dbname].iwfs_part_search_tb set mdl_number='MFCD' where condensed_part_number = '011892121';
update [dbname].iwfs_part_search_tb set mdl_number='MAAS00005493' where condensed_part_number = '011812341';
Это должно быть возможно с некоторым регулярным выражением, но у меня всегда были проблемы со сложным регулярным выражениям (следует искать какой-то хороший учебник) .. Однако, если вы просто ищете какое-то быстрое решение, вы можете импортировать файл в какую-либо электронную таблицу, добавить столбцы с отсутствующей информацией и затем экспортировать в текстовый файл. Сделали это один или два раза быстро (да, грязно, но быстро) обходное решение ... – Martin
Мартин, я на самом деле все так делал ... были 38K строк, которые нуждались в модификации. Гораздо проще было выполнить столбцы по столбцам, чем запустить на нем регулярное выражение. Просто не говорите smemy ....;) – ResourceReaper
Да, это своего рода «хромое» решение, поэтому я не ответил на это как ответ, но в конце, если у вас есть какой-то результат для достижения работа, вы не можете просто подождать, пока не получите наилучшее возможное решение ... :) – Martin