求java一个正规表达式,只包含中文、数字、空格、冒号

求java一个正规表达式,只包含中文、数字、空格、冒号,第1张

只包含中文、数字、空格、冒号的Java正则表达式如下

^[\\u4e00-\\u9fa5 0-9:]+$

我给你个Java语言匹配只包含中文、数字、空格、冒号的程序,你看看吧

import javautilregexMatcher;
import javautilregexPattern;
public class CC {
 public static void main(String[] args) {
  String s="你好 晚上好:2016";
  String regex="^[\\u4e00-\\u9fa5 0-9:]+$";
  Pattern p=Patterncompile(regex);
  Matcher m=pmatcher(s);
  if(mmatches()){
   Systemoutprintln("匹配");
  }else{
   Systemoutprintln("不匹配");
  }
 }
}

运行结果

匹配

<script> var r=/^(=[0-9])(=[A-Z])(=[a-z]){12,20}$/; var t1='aaaaaaaa'; var t2='11111111'; var t3='AAAAAAAA'; var t4='1111AAAA'; var t5='aa11AA'; var t6='a1a1A1A3Az10ooOO'; alert(rtest(t1));//单一条件 false alert(rtest(t2));//单一条件 false alert(rtest(t3));//单一条件 false alert(rtest(t4));//两个条件 false alert(rtest(t5));//三个条件,但 长度不够 false alert(rtest(t6));//满足条件 true </script>

不一定的,需要依表达式范围而定,例如:[\u4e00-\u9fa5] 可以识别出任何汉字,但不包含如:\u3002(匹配中文句号)。

解析:

“[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b] ”该表达式可以识别出: 。 ; , : “ ”( ) 、 ? 《 》 这些标点符号。 正则表达式“\un”匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。例如,\u00A9匹配版权符号(&copy;)。

正则表达式匹配中文汉字 [\u4e00-\u9fa5] ,该表达式可以识别出任何汉字。但上述 \u3002 等匹配的符号不在范围内。

扩展资料:

汉字相关的正则表达式:

1、匹配双字节字符(包括汉字在内):[^\x00-\xff] ,注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

2、只含有汉字、数字、字母、下划线,下划线位置不限:^[a-zA-Z0-9_\u4e00-\u9fa5]+$

3、/^([\p{Han}\p{P}A-Za-z0-9])$/u,其中 \p{Han}表示utf-8编码中的所有中文字符,\p{P}表示中英文标点,A-Z表示大写字母,a-z表示小写英文字母,0-9表示数字,表示>=0,,/u 表示按unicode(utf-8)匹配(主要针对多字节比如汉字)。

参考资料来源:百度百科-正则表达式


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13408305.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存