2

Используя диалоговое окно «Найти и заменить» в Microsoft Word 2003, я хочу найти в списке адресов почтовые индексы (канадские), в которых нет пробела, например:

M2N3X6
L4C2A9
K5G1S7

и поместите пробел в середине:

M2N 3X6
L4C 2A9
K5G 1S7

Это должно быть просто, но у меня есть небольшая проблема с частью "заменить на": я понял, что в поле "Найти" я ввожу [A-Z][0-9][A-Z][0-9][A-Z][0-9] , но в поле "Заменить", как мне добавить пробел в середине, сохранив символы, которые там есть? Я думал, что это будет что-то вроде \1\2\3 \4\5\6 , но это не работает

Любая помощь приветствуется.

3 ответа3

2

\1 и т.д. Заменяют выражения, и для того, чтобы указать, что что-то является выражением, вы заключаете его в (). Так вам нужно

([A-Z])([0-9])([A-Z])([0-9])([A-Z])([0-9])

затем

\1\2\3 \4\5\6

должно сработать. Я думаю, что есть ограничение на количество выражений, которые вы можете иметь (возможно, 9)

0

Очень простой способ: используйте функцию "Text to Columns" в Excel, а затем используйте формулу CONCATENATE для рекомбинации с пробелом в середине. Формула будет = КОНКАТЕНАТ (А1, "", B1)

0

Я не могу найти какой-либо способ (в диалоговом окне «Найти и заменить» в Microsoft Word) выполнить полную замену под-регулярному выражению, как в программах, подобных sed .  Но я нашел многошаговое решение вашей проблемы.  Сначала определите строку, которая не отображается в ваших данных и не содержит каких-либо символов, которые являются специальными в Word «Найти и заменить» (например, « @ » или « # »).  (В качестве альтернативы используйте их, но избегайте их.)  Это может быть один символ, например ' | ', пока это не появляется в ваших данных.  Я предполагаю, что вы выбрали « | ».  Сейчас,

  1. Выполните поиск [A-Z][0-9][A-Z][0-9][A-Z][0-9] и замените на ^&| ,  Это будет помечать каждый несоответствующий почтовый индекс завершающим « | ».
  2. Поиск по [0-9][A-Z][0-9]| и заменить на  ^& (с начальным пробелом).  Это вставит место, где вы хотите это.
  3. Затем найдите все вхождения | и заменить ничем.

Вы можете сделать это без использования подстановочного режима:

  1. ^$^#^$^#^$^#^&| ,
  2. ^#^$^#| ^& (или даже ^?^?^?| ^&).
  3. | → ничего.

Обратите внимание, что ^$ эквивалентно [A-Za-z] , поэтому, если ваша ситуация чувствительна к регистру, я думаю, вам нужно использовать «подстановочные знаки».

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .