|
无意中看到lz的这个帖子,说一下我的看法。
我记得曾经看过帮助文件,里面的^nn,其实就是跟上的ascii码,而从ascii码表当中我们可以看到:
10:代表换行符(即line feed,标准记法为:\n)
13:代表换车符(即carriage return,标准记法为:\r)
所以这里其实牵涉一个不同操作系统下的换行符问题。我们知道一般windows系统下面的换行指的是\r\n,Unix(或者类Unix)下面是\n,而Mac下面是\r(现在好像也改了,但是大多数编辑器一般还是将其看做是\r)
也就是说,在word文档当中真正的段落分隔^p,我觉着应该是\r\n,也即^13^10,是这两个字符的合体。但是同时,word支持\r换行,即认为回车也可以作为换行符(此处个人觉着这个仅仅是换行符,而不是段落分隔符),所以我们在使用通配符替换时也可以使用^13作为换行符来替换。
个人的猜测基于如下测试:
随便打开一个word文档,然后执行通配符替换,将"^13^10"替换为“^13",然后复制所有的内容,粘贴到一些可以支持多种文件系统文件的编辑器(如notepad++等),可以看到事实上,是没有执行换行的。而如果执行如下替换:^13^10替换为^10,可以看到在word当中已经不存在换行符了,但是这时候把所有的文档复制到notepad++中,可以看到事实上还是保持了之前的换行符。(这个主要是notepad++认为windows文档格式下面,\r\n和\n可以作为换行符,而单独的\r是不可以作为换行符的,这个正好跟word是不一样的)
如果以上有什么不对的地方,欢迎lz指正 |
|