求验证中文正则表达式
\u4E00-\u9FA5能验证中文,但是包含中文符号我只想要中文(不要’‘;,这种中文符号)高手请进谢谢...
\u4E00-\u9FA5能验证中文,但是包含中文符号 我只想要中文(不要’‘;,这种中文符号)
高手请进 谢谢 展开
高手请进 谢谢 展开
4个回答
展开全部
\u4E00-\u9FA5只包含汉字,没有标点符号等。
比如:
“是\u201C
;是\uFF1B
,是\uFF0C
都不在这个范围内。
你遇到的问题,我估计跟编码有关:
有些工具在简体中文默认编码(CP 936 /GBK)状态下,无法正常处理此类正则表达式。
请将所用工具的编码切换到任意一种Unicode编码(比如 UTF-8)试试。
另外,简单地说,\u4E00-\u9FA5只是我们常用的GBK汉字范围。汉字不止这些。
若仍未解决,请详述现象,我继续帮你。
比如:
“是\u201C
;是\uFF1B
,是\uFF0C
都不在这个范围内。
你遇到的问题,我估计跟编码有关:
有些工具在简体中文默认编码(CP 936 /GBK)状态下,无法正常处理此类正则表达式。
请将所用工具的编码切换到任意一种Unicode编码(比如 UTF-8)试试。
另外,简单地说,\u4E00-\u9FA5只是我们常用的GBK汉字范围。汉字不止这些。
若仍未解决,请详述现象,我继续帮你。
展开全部
正则表达式主体:
[0-9]+[a-zA-Z]+[0-9a-zA-Z]*|[a-zA-Z]+[0-9]+[0-9a-zA-Z]*
说明:分为两种情况:
①至少一个数字开头,接着至少一个字母,后面无论是数字还是字母都可以。
②至少一个字母开头,接着至少一个数字,后面无论是数字还是字母都可以。
补充说明:虽然有些环境使用\d或[:digit:]之类的形式可以表示数字,或者其它的特定的形式所对应的特定字符集,但是这样表示并不是通用的;因此建议使用通用的方式来写正则表达式,如[0-9]表示数字,[a-zA-Z]表示大小写字母等。当然,对于特定的编程语言可能还会涉及到转义字符,届时请注意一下。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
"^[\u4e00-\u9fa5]+$"我也找了好多,这个是好的,可以用!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Perl中可以使用:
use Encode;
$_='我亲爱的只;你知道吗?我在想你们^-^';
$a=decode('cp936',$_);
($x)=($a =~ m/[\p{Han}]+/g);
print encode('cp936',$x),"\n";
匹配汉字,不会匹配到标点符号
use Encode;
$_='我亲爱的只;你知道吗?我在想你们^-^';
$a=decode('cp936',$_);
($x)=($a =~ m/[\p{Han}]+/g);
print encode('cp936',$x),"\n";
匹配汉字,不会匹配到标点符号
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询