软件平台:Ubuntu 14.04LTS的find命令
命令代码:
find . -regextype "posix-extended" -regex "./[^x{4e00}-x{9fa5}]+.*"
效果:匹配所有含有汉字文件名的文件
疑问:utf编码 x{4e00}到 x{9fa5}是 汉字的区间,应该用 [x{4e00}-x{9fa5}]才对。但是只有[^x{4e00}-x{9fa5}] 才能实现以汉字开头的功能。
请问:为什么要用否定匹配符号?
软件平台:Ubuntu 14.04LTS的find命令
命令代码:
find . -regextype "posix-extended" -regex "./[^x{4e00}-x{9fa5}]+.*"
效果:匹配所有含有汉字文件名的文件
疑问:utf编码 x{4e00}到 x{9fa5}是 汉字的区间,应该用 [x{4e00}-x{9fa5}]才对。但是只有[^x{4e00}-x{9fa5}] 才能实现以汉字开头的功能。
请问:为什么要用否定匹配符号?
http://www.cnblogs.com/wenmaoyu/archive/2011/07/21/2113124.html
[^x]似乎是用来匹配双字节字符