使用VBA词来删除每个选定词的第一个字符以外的所有字符

时间:2019-02-20 20:03:06

标签: vba ms-word

很抱歉,以前是否有人问过这个问题,但是尽管已经解决了一些类似的问题,但我仍无法找到针对此特定问题的可行解决方案。

在Microsoft Word中使用VBA(当前使用365/16),如何有效地删除当前所选每个单词的除第一个字符以外的所有字符?如果更简单地假设所有单词在两侧都用一个空格包裹,这是可以接受的,因为它会留下单词开头和结尾的句子,以及(最常见的)单词后面是逗号。我还需要解决方案以保留所有现有格式(包括节和页面布局等),尤其是除去其余字母后首字母的大小写敏感。一个例子是:


原始

Lorem ipsum dolor坐下,奉献己任,sius do eiusmod tempor incididunt ut Labore et dolore magna aliqua。 Risus Viverra的Tortor dignissim convallis aenean et tortor任职。 Pellentesque坐在amet porttitor eget dolor morbi中。 ut placerat orci nulla pellentesque。

Lorem mollis aliquam ut porttitor leo a。 Urna duis convallis convallistellus id Interdum Velit 23 Laoreet。 Et leo duis ut diam quam nulla porttitor。

成为

L i d s a,c a e,s d e t i u l e d m a。 T d c a e t a R V a。诗篇

L m a u p l a。 U cc t i I V 2 L. E l d u d q n p。


任何帮助或指导将不胜感激。

1 个答案:

答案 0 :(得分:0)

您不需要宏/ VBA-一个简单的通配符查找/替换即可,其中:

Find = (<[! ])*>
Replace = \1