如何在不使用空格的情况下在MS Word 2003中查找逗号?


8

有时我会从不使用逗号的用户那里获取文档,例如“看,这是一个例子”。

在Word 2003中,是否可以使用任何搜索通配符来查找这些出现的事件?

我曾尝试,?,*没有成功,也,\?,\*没有工作。

Answers:


9

我可以告诉你一个更简单的方法。
只需将所有替换,,<space>where <space>表示空格,然后替换,<space><space>,<space>以解决用户在逗号后确实放置空格的地方。

警告:如果您在数字中使用逗号(作为千位分隔符或十进制分隔符),则需要遍历文档以更正数字,例如“ 1,200”,现在将其呈现为“ 1,200”。


2
您为什么要说这种方式更简单?它需要两个步骤而不是一个步骤;)
duDE 2014年

5
也许并不简单,但是这更容易比记住[!<]?,[!>]?,特别是如果你不熟悉正则表达式的。使用前一个时,我需要执行几个步骤-查找带有字符串的记事本文档(或打开此SE页面),复制字符串,粘贴字符串,运行。不要以为我至少在前几次会相信我的大脑会记住它。
2014年

1
另一个答案真的很有趣,我不是Word专家,但是可以说它支持某些现成的RegEx很好。不过,由于其简单性,这也是一个很好的答案。
大卫·泽门斯

我选择此答案作为最佳答案,因为duDe的解决方案不适用于特别要求的Word 2003。感谢@tumchaaditya这个不错的技巧。
凯诺克

19

您可以使用以下模式:

[!<]?,[!>]?

这意味着:在任何字符之间找到一个逗号字符,而不是在单词的开头和单词的末尾。

因此,在下面的示例中,只能在“ 3,a”处找到逗号(而不是在“,1”和“ c,”处的逗号)

,123,abc,

MS WORD有效吗?如果是:我在哪里可以找到更多信息?
Hannu 2014年


11
谢谢。我一直认为Word中的搜索功能“不足”-现在我发现是我的知识不足。
Hannu 2014年

@Hannu:很乐意帮助!如果您发现答案有帮助,请随时填写;)
duDE 2014年

2
@duDE在Word 2010中为我工作,只要我已选择/选中“使用通配符”
Halfwarr 2014年

0

搜索并更正逗号后没有空格。选中“使用通配符”并使用以下命令:

Find what: (,)([! ])
Replace with: \1 \2

(注意:“查找”中的“!”后面有一个空格)

如果您的文本包含上面的CTL语言/脚本(如北印度文/德文加里语)不起作用(不知道为什么?),请改用它(也适用于拉丁脚本语言):

Find what: (,)([! ]?)
Replace with: \1 \2

如果您的文本包含诗歌,则逗号可能会出现在行尾(在节中),不应在空格后加上空格,因此应添加条件以避免在行尾出现逗号:

Find what: (,)([! ^l]?)
Replace with: \1 \2

如果还应避免在段落末尾出现逗号,则在^ 13(段落标记)后加上^ l,但是这种可能性很小,只有当打字员在每行的末尾。

还有一种情况,如果您的文本包含包含逗号的数字(表示百分号,千分号的分隔符),请使用此方法避免不必要的此类逗号:

Find what: ([!0-9],)([! ^l][!0-9])
Replace with: \1 \2
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.