notepad++匹配汉字的正则表达式与Java中的为啥不同?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了notepad++匹配汉字的正则表达式与Java中的为啥不同?相关的知识,希望对你有一定的参考价值。

工作中会经常使用notepad++处理文本;有时需要检索汉字,网上给出的匹配汉字的范围[\u4E00-\u9FFF]在Java中是正常的,但是在notepad++中会把字母、数字、常见符号都匹配进去。百度之后发现[^\x00-\x80]+可以准确找到文本中汉字;想知道两者的差别是什么原因造成的;再就是汉字在不同编码中的取值范围是如何确定的

java是unicode编码的,notepad++是正常的ascii编码,所以正则的写法以及表示的字符范围也是不同的。。。 参考技术A 你说的那个也不对,不信你试试日语,也能匹配
要匹配中文
[\x4e00-\x9fa5]+本回答被提问者采纳

在notepad中匹配alt=\"这里的文字不一样\"的正则表达式,高手请指点下,呵呵,谢谢了

notepad的确不支持正则表达式匹配,楼主可能搞错了,除非是notepad++、notepad2之类的东西,你得确认是哪一个,当然了,精确一些的话,是要搞清楚正则表达式是什么引擎,Perl、Java、VB、PCRE、JS、C#等等。 参考技术A Notepad 里没有正则匹配的功能,需要通过其它语言来实现~~追问

呵呵,notepad中有正则表达式匹配哦,您能帮我下吗?谢谢呵呵,真的有哦

追答

那我孤陋寡闻了,notepad 不会

参考技术B 用dreamweaver吧,正则表达式是:
alt=\"(.+?)\"

From:Mrhuo.com

以上是关于notepad++匹配汉字的正则表达式与Java中的为啥不同?的主要内容,如果未能解决你的问题,请参考以下文章

用JAVA语言编写正则表达式匹配指定的汉字的方法

Notepad++ 使用正则表达式

JAVA正则表达式判断 只能包含汉字、英文、“_”和数字 ,正则该怎么写呢?

在notepad中匹配alt=\"这里的文字不一样\"的正则表达式,高手请指点下,呵呵,谢谢了

java之endwith()方法以及正则表达式匹配中文

正则表达式如何匹配汉字?