这就是重点。
我有一个从 Pages 导入的文档,其中包含很多方程式。
方程式中的数字和单位之间有空格,例如:
100.11 m
200.32 W
将其导入 Word 后,公式中空格消失了,现在
100.11m
200.32W
另外一个额外的问题是,在转换过程中,一些数字用逗号而不是点来表示小数点分隔符。
所以,我的正则表达式是这样的......
([0-9]*[\.|\,][0-9]*)([m|W])
搜索一个有 n 位数字的数字,加上一个点或逗号,加上另一个数字,加上一个字母 m 或 v...
我想要空格回来,所以我做了以下 VBA 宏
Sub AddSpace()
For Each eqn In ActiveDocument.OMaths
eqn.Range.Find.Execute FindText:="([0-9]*[\.|\,][0-9]*)([m|W])", ReplaceWith:="\1" & " " & "\2", MatchCase:=True, MatchWildcards:=True, Replace:=wdReplaceAll
Next
End Sub
此脚本挂起了 word。
答案1
以下是简单的解决方案:
在 Word 中编辑您的文档,使用替换命令 ( Ctrl+ H),勾选“使用通配符”并输入:
查找内容:([0-9]@).([0-9]@)m
替换为:\1.\2 m
然后点击全部替换。
这将完成所有操作m
,然后重复上述操作W
。