1

Я редактирую большой документ с большим количеством дат в формате мм / дд. Я хотел бы изменить их на формат "MMMM ddth". Я хочу, чтобы 9/10 было изменено на 10 сентября. Похоже, так и должно быть:

Найти: (9/)([0-9]*)( )

Заменить на: September \2

Когда я использую это, 9/10 заменяется 10 сентября. Я также попробовал:

Найти: 9/([0-9]*) <--- завершающий пробел

Заменить на: September \1th

... что приводит к замене 9/10 на 10 сентября, т. е. т. е. - то же самое, за исключением запятой.

Кто-нибудь может объяснить, что происходит?

1 ответ1

1

Как я отметил в комментарии выше, я в конце концов решил проблему. В моем регулярном выражении произошло улучшение, на которое указал мне G-Man (для того, чтобы соответствовать двухзначным дням, я должен был использовать 9/([0-9]{1,2}) .) Это не объясняло странных замен, которые я видел.

Оказывается, что поиск / замена подстановочных знаков в Word несовместима с отслеживанием изменений. Я отключил изменения трека, и вдруг все заработало так, как я ожидал. Это была не ошибка пользователя - это ошибка.

К сожалению, это означало, что мои изменения больше не отслеживались. Поскольку эти изменения довольно легко документировать в комментариях, это не было большой проблемой. В некоторых случаях, однако, абсолютно необходимо отметить каждое изменение. Я нашел ссылку, которая описывает метод для этого, который совместим с регулярными выражениями. Я думаю, что это будет работать, только если вы будете первым, кто отредактирует документ: пост в блоге от кого-то, имеющего дело с похожей проблемой

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