自己做项目时整理的一些用于过滤的正则表达式

本文分享了一些常用的正则表达式,用于验证和过滤数字、中文、字母等。例如:`\d+`用于验证数字,`[\u4e00-\u9fa5]+`用于验证中文,`^[A-Za-z0-9\u4e00-\u9fa5]+$`用于验证数字、汉字和字母的组合。还提供了一个方法`count`来计算字符串中符合特定正则表达式的字符数量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1、举例以下几种,其他情况可以以此类推:

  Pattern patternNum = Pattern.compile("\\d+"); // 验证数字
  Pattern patternChinese = Pattern.compile("[\\u4e00-\\u9fa5]+"); // 验证中文
  Pattern patternLetter = Pattern.compile("[a-zA-Z]+"); // 验证字母

  Pattern patternNumChine = Pattern.compile("^[0-9\\u4e00-\\u9fa5]+"); // 数字+汉字
  Pattern patternNumLetter = Pattern.compile("^[A-Za-z0-9]+"); // 数字+字母

  Pattern patternNumChinLetter = Pattern.compile("^[A-Za-z0-9\\u4e00-\\u9fa5]+");// 数字+汉字+字母
  Pattern patternNoSpecialCharacters = Pattern .compile("[^A-Za-z0-9.\\u4e00-\\u9fa5]+"); // 除字母数字,点号,中文之外的符号

  Pattern patternNumChinSpeci = Pattern.compile("[^A-Za-z.]+"); // (除字母点号之外的符号)

2、计算某种类型的字符的个数:

/*

*str代表你传入的字符串,regex是你要验证的正则表达式,如 "[a-zA-Z]+" ,这样就可以计算你传入的字符串中有多少个字母;

*/

public int count(String str, String regex) { 
  int count = 0;
  Pattern pattern = Pattern.compile(regex);
  Matcher m = pattern.matcher(str);
  while (m.find()) {
   for (int i = 0; i <= m.groupCount(); i++) {
    count++;
   }
  }
  return count;
 }

 

希望对大家有用的顶一个,互通有无,取长补短~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值