|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 周星骋 于 2014-10-21 16:47 编辑
tan133 发表于 2014-10-20 14:56
非常感谢,按你的测试文件,的确有效,
不过,因为,说半天老师没懂,我只是把模型简化了
真实的应用 ...
看到你回复别的帖子里,你懂通配符的呀。
我在8楼给的例子中,多了两处“[!”,不过也能用。
应该是:
- ([!^13^n]{1,10})(^13)([!^13^n]{1,10})([^13^n])
复制代码 第1个表达式([!^13^n]{1,10})表示:
不是回车,也不是分栏符,1到10个字。
第2个表达式(^13)表示:
一个回车。
第3个表达式([!^13^n]{1,10})表示:
不是回车,也不是分栏符,1到10个字。
第4个表达式([^13^n])表示:
回车或者分栏符。
总的意思是:
以10个字为例,
如果上下两行分别都不超过10个字,那么就将上一行的回车去掉,使两行连起来。
如果上下两行只要有一行超过10个字,就不连。
如果上下两行是分栏符隔开的,不管多少个字,也不连。
所以,
上一行就是 非回车、非分栏符开头,1至10个字,到回车结束:
([!^13^n]{1,10})(^13)
下一行就是 非回车、非分栏符开头,1至10个字,到回车或分栏符结束:
([!^13^n]{1,10})([^13^n])
替换时,将上一行的回车 (^13) 替换掉就行了。
看到你9楼的附件,有图片,本来想在 非回车、非换行符 里加个 非图片,即
[!^13^n^g]
可惜提示 ^g 不能用于通配符。
|
|