2013-12-13 3 views
2

У меня есть одно и двухзначное число, и я хочу сделать это 4 цифры.Notepad ++ найти и заменить номер, цифровой формат

Таким образом, "1" стал "0001", "22" стал "0022"

Как сделать это?

+0

Я только получил часть пути. Выберите регулярное выражение с помощью Find: ([1-9] {1,3}) Замените: (0 \ 1). Однако это не игнорирует числа, которые уже имеют начальный нуль или добавляют правильное число ведущих нулей. Кажется, регулярное выражение в NotePad не знает^(не). – Dijkgraaf

ответ

3

Вы должны сделать две замены:

search: \b(\d\d)\b 
replace: 00$1 

и:

search: \b(\d)\b 
replace: 000$1 
+0

И если вы хотите применить одни и те же замены в нескольких файлах, вы можете записать макрос. – psxls

+0

Это выражение отлично работает, когда я положил '\ b (\ d \ d) \ b' на вкладку' mark'. но на вкладке «replace» я не даю результата, в то время как регулярное выражение выбирается как режим поиска. –

+0

@ ir-tech: Извините, я вас не понимаю. Не могли бы вы объяснить, что вы имеете в виду?В каком контексте лучше спросить новый вопрос с примерным файлом ввода, тем, что вы получаете и что ожидается. – Toto

0

Я \ 1 вместо $ 1

Первая замена:

search: (\d\d) 
replace: 00\1 

Вторая замена :

search: (\d) 
replace: 000\1 
0

Общая информация о данном вопросе. Предположим, мы хотим преобразовать набор чисел, чтобы все имели, скажем, 7 цифр, добавляя при этом ведущие нули. Это можно сделать в два этапа.

  1. Добавить 7 ведущих нулей в каждое число, например, 2 33 456 789012 станет 00000002 000000033 0000000456 0000000789012.
  2. Преобразуйте каждое число, чтобы иметь необходимое количество цифр, удалив некоторые ведущие нули, чтобы оставить нужные 7 цифр.

Подробнее.

  1. Поиск \b(\d{1,6})\b, который находит числа от 1 до 6 цифр включительно. Замените их на 0000000\1. Нет необходимости искать 7-значные числа, поскольку они уже имеют правильную длину.
  2. Искать \b0+(\d{7})\b и заменить на \1.

Примечание

  • ввода чисел, которые имеют более чем 7 цифр не будет найдено за шагом 1.
  • ввода чисел, которые имеют начальные нули с менее чем 7 значащими цифрами, например 0 будет иметь 7 нулей, добавленных с помощью шага 1, тогда как 000000000000 длиннее 7 цифр и поэтому не будет изменено с шагом 1.
  • Номера ввода с ведущими нулями и более 7 значащих цифр не будут изменены.
Смежные вопросы