免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8082 | 回复: 13

vim匹配中文的问题!请教一下斑竹 [复制链接]

论坛徽章:
0
发表于 2007-08-24 00:10 |显示全部楼层
10可用积分
请教一下,请问在我在使用VIM的时候,想匹配全部汉字,使用什么命令啊,网上看了一些,在VIM中使用都不对,请指点!我的系统 win2000+vim。字符集应该是WIN2000默认的,cp936

论坛徽章:
0
发表于 2007-08-24 00:14 |显示全部楼层
匹配全部汉字是什么意思?如果你懒得输入一堆汉字去进行查找的话,你可以把光标移动到这一堆汉字中的一个,ctrl+*就会帮你查找这堆汉字了,对英文单词以上技巧同样适用.

论坛徽章:
0
发表于 2007-08-24 00:20 |显示全部楼层

回复 #2 converse 的帖子

比如:在一个文本文件中,通过使用正则表达式,把所有的中文汉字替换为aaa。
网上有很多介绍,比如用:/([\x80-\xFF][\x80-\xFF]*)/ 来查找中文字符,但是在VIM下都不对。

论坛徽章:
0
发表于 2007-08-24 00:55 |显示全部楼层
基本上,你可以用[^[:print:]] 来做,但是这个不一定对。如果你就是文本,问题不会很大

论坛徽章:
0
发表于 2007-08-24 00:58 |显示全部楼层
原帖由 converse 于 2007-8-24 00:14 发表
匹配全部汉字是什么意思?如果你懒得输入一堆汉字去进行查找的话,你可以把光标移动到这一堆汉字中的一个,ctrl+*就会帮你查找这堆汉字了,对英文单词以上技巧同样适用.

应该是shift+*吧,至少我在linux平台是这样的,难道win的vim不一样?

论坛徽章:
0
发表于 2007-08-24 09:27 |显示全部楼层
原帖由 ivhb 于 2007-8-24 00:55 发表
基本上,你可以用[^[:print:]] 来做,但是这个不一定对。如果你就是文本,问题不会很大



难道没有一种普遍的办法么?比如通过字符集编码来实现。网上大多介绍使用 [\u4e00-\u9fa5] 来匹配中文,但是VIM不可用。但是这种思路我想应该是可以的

论坛徽章:
0
发表于 2007-08-24 10:05 |显示全部楼层
没有这个可能,汉字编码字,等你罗列全,你还不如手工挨个儿编辑。

论坛徽章:
0
发表于 2007-08-24 11:51 |显示全部楼层
原帖由 ivhb 于 2007-8-24 10:05 发表
没有这个可能,汉字编码字,等你罗列全,你还不如手工挨个儿编辑。



不大应该啊,我想,在VIM中,应该可以通过正则表达式匹配上中文汉字的。找了N久,就是没有合适的办法。

论坛徽章:
0
发表于 2007-08-24 12:43 |显示全部楼层
找到了,麻烦也在这里说一声。让大家学习学习。

论坛徽章:
0
发表于 2007-08-27 18:06 |显示全部楼层
原帖由 ivhb 于 2007-8-24 12:43 发表
找到了,麻烦也在这里说一声。让大家学习学习。



花了N多时间,在VIM下还是没有好的解决办法,很遗憾;不过继续关注中。
其他的,看了网上的,比如PERL、PHP倒是有不少办法滴。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP