永发信息网

Unicode 在 UtralEdit 正则表达式 如何表达,或者匹配汉字...

答案:2  悬赏:10  手机版
解决时间 2021-11-14 19:32
  • 提问者网友:鼻尖触碰
  • 2021-11-13 23:02
Unicode 在 UtralEdit 正则表达式 如何表达,或者匹配汉字...
最佳答案
  • 五星知识达人网友:执傲
  • 2021-11-13 23:40
通常用[\u4E00-\u9FA5]匹配汉字,如用[\u4E00-\u9FA5]*匹配若干连续汉字。这个字符集包含繁简体中文字符,也包含一些特殊的中文符号如“卐卍”等。

补充:
抱歉,确实是我疏忽了,想当然的就回答了。重新调查了下:
UltraEdit有三个可以使用的语法集。一个是早期 UltraEdit 的原始 UltraEdit 语法(默认),二是可选的“Unix”语法,还有一个是“Perl”语法。这可以从高级选项启用。

在UE官网上查到Perl语法正则的说明中有这么一句:
\x{dddd} A hexadecimal escape sequence - matches the single character whose code point is 0xdddd.
就是说 \x{dddd} 将匹配一个代码为0xdddd十六进制转义序列的单个字符。

到这里本来以为有希望了,赶紧用 \x{5b57} (就是汉字”字“的Unicode)测试,
结果发现居然不行改变了多种写法、代码测试仍通不过(如[\x{5b57}]、\x5b57 等),况且帮助中也提到这种表达式只能用于匹配单字符,结果最终只好作罢。

本人已尽力,坐等高手出现的同时说声抱歉。
全部回答
  • 1楼网友:蓝房子
  • 2021-11-14 00:44
根据楼上的提示,我做了一次实验结果是可以匹配到的。正则表达式为[\x{4e00}-\x{9fff}]+但是LZ要注意,你的文件要把ASCII编码的字符转换证Unicode否则会提示正则表达式有错误!同时,再次感谢楼上。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯