如何向此 "Double Space After Sentence" 代码添加排除项?
How can I add exclusions to this "Double Space After Sentence" code?
我希望下面的代码更直观,所以我需要为 "Dr." 或 "N.A.S.A." 等缩写添加排除项。此外,它不应为带小数点的数字添加空格。如何手动添加特定排除项或通配符排除项?
Sub TwoSpaces()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "([.\?\!]) {1,}"
.Replacement.Text = " "
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
我也不想将其应用于论文的某些部分,例如参考书目部分。我可以使用以下代码使宏排除我用 "do not check spelling and grammar" 标记的区域吗:
Selection.NoProofing = True
你的解决方案已经忽略了小数,因为它寻找一个 space,他们没有,对于参考书目,你可以稍后更新字段,添加的 spaces 将消失。
剩下 'Dr.' 和 'N.A.S.A.'
我认为无法排除校对已关闭的区域。相反,您是否尝试过逐步查找结果并检查每个结果?听起来你会有很多这样的排除项,我认为修改搜索字符串不是处理它们的最佳方法。
下面是一些示例 C# 代码:
range.Find.MatchWildcards = true;
range.Find.Text = ([.\?\!]) {1,}";
while (range.Find.Execute())
{
// check each find result: range.Text
}
我希望下面的代码更直观,所以我需要为 "Dr." 或 "N.A.S.A." 等缩写添加排除项。此外,它不应为带小数点的数字添加空格。如何手动添加特定排除项或通配符排除项?
Sub TwoSpaces()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "([.\?\!]) {1,}"
.Replacement.Text = " "
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
我也不想将其应用于论文的某些部分,例如参考书目部分。我可以使用以下代码使宏排除我用 "do not check spelling and grammar" 标记的区域吗:
Selection.NoProofing = True
你的解决方案已经忽略了小数,因为它寻找一个 space,他们没有,对于参考书目,你可以稍后更新字段,添加的 spaces 将消失。
剩下 'Dr.' 和 'N.A.S.A.'
我认为无法排除校对已关闭的区域。相反,您是否尝试过逐步查找结果并检查每个结果?听起来你会有很多这样的排除项,我认为修改搜索字符串不是处理它们的最佳方法。
下面是一些示例 C# 代码:
range.Find.MatchWildcards = true;
range.Find.Text = ([.\?\!]) {1,}";
while (range.Find.Execute())
{
// check each find result: range.Text
}