我正在编辑一个大型文档,其中包含许多 mm/dd 格式的日期。我想将它们更改为“MMMM ddth”格式。我想要9/10改为9月10日。好像应该是:
寻找: (9/)([0-9]*)( )
用。。。来代替: September \2
当我使用这个时,9/10被替换为9月10日-9月。我也尝试过:
寻找: 9/([0-9]*)
<---尾随空格
用。。。来代替: September \1th
...结果9/10被取代九月十日- 除逗号外,其他均相同。
谁能解释一下发生了什么事?
答案1
正如我在上面的评论中提到的,我最终解决了这个问题。G-Man 指出,我的正则表达式有所改进(为了匹配两位数的日期,我应该使用9/([0-9]{1,2})
.)。但这并不能解释我看到的奇怪替换。
事实证明,Word 的通配符匹配查找/替换与修订功能不兼容。我关闭了修订功能,突然一切都按我预期的那样运行了。这不是用户错误 - 而是一个错误。
不幸的是,这意味着我的更改不再被跟踪。由于这些更改很容易在注释中记录下来,所以这不是一个大问题。但在某些情况下,绝对需要记录每项更改。我找到了一个链接,其中描述了一种与正则表达式兼容的方法。但我认为只有当您是第一个编辑文档的人时,它才会起作用:处理类似问题的人的博客文章