原文:http://blog.csdn.net/k21325/article/details/54090066

1、Java中过滤出字母、数字和中文的正则表达式

(1)过滤出字母的正则表达式

  1. [^(A-Za-z)]

(2) 过滤出 数字 的正则表达式

  1. [^(0-9)]

(3) 过滤出 中文 的正则表达式

  1. [^(\\u4e00-\\u9fa5)]

(4) 过滤出字母、数字和中文的正则表达式

  1. [^(a-zA-Z0-9\\u4e00-\\u9fa5)]

2、实例源码

  1. **
  2. * @Title:FilterStr.java
  3. * @Package:com.you.dao
  4. * @Description:Java中过滤数字、字母和中文
  5. * @Author: 游海东
  6. * @date: 2014年3月12日 下午7:18:20
  7. * @Version V1.2.3
  8. */
  9. package com.you.dao;
  10. /**
  11. * @类名:FilterStr
  12. * @描述:正则表达式过滤数字、字母和中文
  13. * @Author:游海东
  14. * @date: 2014年3月12日 下午7:18:20
  15. */
  16. public class FilterStr
  17. {
  18. /**
  19. *
  20. * @Title : filterNumber
  21. * @Type : FilterStr
  22. * @date : 2014年3月12日 下午7:23:03
  23. * @Description : 过滤出数字
  24. * @param str
  25. * @return
  26. */
  27. public static String filterNumber(String number)
  28. {
  29. number = number.replaceAll("[^(0-9)]", "");
  30. return number;
  31. }
  32. /**
  33. *
  34. * @Title : filterAlphabet
  35. * @Type : FilterStr
  36. * @date : 2014年3月12日 下午7:28:54
  37. * @Description : 过滤出字母
  38. * @param alph
  39. * @return
  40. */
  41. public static String filterAlphabet(String alph)
  42. {
  43. alph = alph.replaceAll("[^(A-Za-z)]", "");
  44. return alph;
  45. }
  46. /**
  47. *
  48. * @Title : filterChinese
  49. * @Type : FilterStr
  50. * @date : 2014年3月12日 下午9:12:37
  51. * @Description : 过滤出中文
  52. * @param chin
  53. * @return
  54. */
  55. public static String filterChinese(String chin)
  56. {
  57. chin = chin.replaceAll("[^(\\u4e00-\\u9fa5)]", "");
  58. return chin;
  59. }
  60. /**
  61. *
  62. * @Title : filter
  63. * @Type : FilterStr
  64. * @date : 2014年3月12日 下午9:17:22
  65. * @Description : 过滤出字母、数字和中文
  66. * @param character
  67. * @return
  68. */
  69. public static String filter(String character)
  70. {
  71. character = character.replaceAll("[^(a-zA-Z0-9\\u4e00-\\u9fa5)]", "");
  72. return character;
  73. }
  74. /**
  75. * @Title : main
  76. * @Type : FilterStr
  77. * @date : 2014年3月12日 下午7:18:22
  78. * @Description :
  79. * @param args
  80. */
  81. public static void main(String[] args)
  82. {
  83. /**
  84. * 声明字符串you
  85. */
  86. String you = "^&^&^you123$%$%你好";
  87. /**
  88. * 调用过滤出数字的方法
  89. */
  90. you = filterNumber(you);
  91. /**
  92. * 打印结果
  93. */
  94. System.out.println("过滤出数字:" + you);
  95. /**
  96. * 声明字符串hai
  97. */
  98. String hai = "¥%……4556ahihdjsadhj$%$%你好吗wewewe";
  99. /**
  100. * 调用过滤出字母的方法
  101. */
  102. hai = filterAlphabet(hai);
  103. /**
  104. * 打印结果
  105. */
  106. System.out.println("过滤出字母:" + hai);
  107. /**
  108. * 声明字符串dong
  109. */
  110. String dong = "$%$%$张三34584yuojk李四@#¥#%%¥……%&";
  111. /**
  112. * 调用过滤出中文的方法
  113. */
  114. dong = filterChinese(dong);
  115. /**
  116. * 打印结果
  117. */
  118. System.out.println("过滤出中文:" + dong);
  119. /**
  120. * 声明字符串str
  121. */
  122. String str = "$%$%$张三34584yuojk李四@#¥#%%¥……%&";
  123. /**
  124. * 调用过滤出字母、数字和中文的方法
  125. */
  126. str = filter(str);
  127. /**
  128. * 打印结果
  129. */
  130. System.out.println("过滤出字母、数字和中文:" + str);
  131. }
  132. }

3、实例运行结果

过滤出数字:123
过滤出字母:ahihdjsadhjwewewe
过滤出中文:张三李四
过滤出字母、数字和中文:张三34584yuojk李四

ps:Java正则表达式过滤汉字

  1. String str = "hello你好吗,我很好 thank you";
  2. String reg = "[\u2E80-\u9FFF]";
  3. Pattern pat = Pattern.compile(reg);
  4. Matcher mat = pat.matcher(str);
  5. String repickStr = mat.replaceAll("");
  6. System.out.println("过滤中文后: "+repickStr);
  1. import java.util.regex.Matcher;
  2. import java.util.regex.Pattern;
  3. public class T {
  4. /**
  5. * 过滤字母
  6. * @param alphabet
  7. * @return
  8. */
  9. public static String filterAlphabet(String alphabet){
  10. return alphabet.replaceAll("[A-Za-z]", "");
  11. }
  12. /**
  13. * 过滤数字
  14. * @param digital
  15. * @return
  16. */
  17. public static String filterDigital(String digital){
  18. return digital.replaceAll("[0-9]", "");
  19. }
  20. /**
  21. * 过滤汉字
  22. * @param chin
  23. * @return
  24. */
  25. public static String filterChinese(String chin){
  26. return chin.replaceAll("[\\u4e00-\\u9fa5]", "");
  27. }
  28. /**
  29. * 过滤 字母、数字、汉字
  30. * @param character
  31. * @return
  32. */
  33. public static String filterAll(String character){
  34. return character.replaceAll("[a-zA-Z0-9\\u4e00-\\u9fa5]", "");
  35. }
  36. /**
  37. * @param args
  38. */
  39. public static void main(String[] args) {
  40. // TODO Auto-generated method stub
  41. String str = "hello你好吗,我很好 thank you";
  42. String reg = "[\u2E80-\u9FFF]";
  43. Pattern pat = Pattern.compile(reg);
  44. Matcher mat = pat.matcher(str);
  45. String repickStr = mat.replaceAll("");
  46. System.out.println("过滤中文后: "+repickStr);
  47. System.out.println("-----------------");
  48. System.out.println(filterAlphabet("123abc你好"));
  49. System.out.println(filterDigital("123abc你好"));
  50. System.out.println(filterChinese("123abc你好"));
  51. System.out.println(filterAll("123abc你好"));
  52. }
  53. }

以上内容是关于java正则表达式过滤中文、字母、数字的全部叙述,希望大家喜欢。

Java正则表达式过滤出字母、数字和中文的更多相关文章

  1. Java中过滤出字母、数字和中文的正则表达式

    1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式 [^(A-Za-z)] (2)过滤出数字的正则表达式 [^(0-9)] (3)过滤出中文的正则表达式 [^(\\u4e0 ...

  2. AJPFX总结关于Java中过滤出字母、数字和中文的正则表达式

    1.Java中过滤出字母.数字和中文的正则表达式 (1)过滤出字母的正则表达式      [^(A-Za-z)] (2) 过滤出 数字 的正则表达式   [^(0-9)] (3) 过滤出 中文 的正则 ...

  3. php+正则将字符串中的字母数字和中文分割

    原文出处 如果一段字符串中出现字母数字还有中文混排的情况,怎么才能将他们区分开呢,经过一番思索,得到了如下代码,分享给大家 如:$str="php如何将字 符串中322的字母数字sf f45 ...

  4. Java正则表达式过滤并消除非法字符

    package sd; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * * @author 大汉 * */ ...

  5. java判断字符串是否为数字或中文或字母

     个人认为最好的方法 *各种字符的unicode编码的范围:     * 汉字:[0x4e00,0x9fa5](或十进制[19968,40869])     * 数字:[0x30,0x39](或十进制 ...

  6. java正则表达式过滤html标签

    import java.util.regex.Matcher; import java.util.regex.Pattern; /** * <p> * Title: HTML相关的正则表达 ...

  7. Java 正则表达式 过滤html标签

    extends:http://aguang520.iteye.com/blog/1056686# 前段时间开发的时候要读取一篇文章的简介内容(也就是前200个字符),使用了隐藏字段,可能有人就要问了, ...

  8. ios 一个正则表达式测试(只可输入中文、字母和数字)

    一个正则表达式测试(只可输入中文.字母和数字) 在项目中碰到了正则表达式的运用,正则还是非常强大的,不管什么编程语言,基本上都可以用到.之前在用java时特别是对用户名或密码使用正则非常爽,写 脚本上 ...

  9. Java中用正则表达式找出数字

    Java中用正则表达式找出数字 1.题目    String str = "fjd789klsd908434jk#$$%%^38488545",从中找出78990843438488 ...

随机推荐

  1. IIS ARR(Application Request Route)与反向代理(Reverse Proxy)

    为何要用反向代理? 这里说说我的场景, 我在服务器上假设了SVN(Visual SVN)用的端口是:8080, 而我想通过输入svn.niusys.com就可以访问我的SVN服务器,也就是要通过80端 ...

  2. 经典算法mark

    在平时找工作的时候,或多或少会遇到一些算法问题,很多都是比较经典或者网上已经流传很久的.只是我们没有接触过,所以不知道怎么解决. 在这儿,我自己总结一些我遇到的一些经典算法,给自己增加一点记忆,也给需 ...

  3. pil - pillow 的版本

    pip install  PIL        python2版本 pip install  pillow      python3版本

  4. 第2节 hive基本操作:12、hive当中的hql语法

    3.2. hive查询语法 3.2.1.SELECT https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Select 基本 ...

  5. delphi byte to of set

    最佳方案 type // Controls.TCMMouseWheel relies on TShiftState not exceeding 2 bytes in size TShiftState ...

  6. JAVA基础——设计模式之装饰者模式

    装饰模式 : 对新房进行装修并没有改变房屋的本质,但它可以让房子变得更漂亮.更温馨.更实用.    在软件设计中,对已有对象(新房)的功能进行扩展(装修).    把通用功能封装在装饰器中,用到的地方 ...

  7. 【Pytorch】关于torch.matmul和torch.bmm的输出tensor数值不一致问题

    发现 对于torch.matmul和torch.bmm,都能实现对于batch的矩阵乘法: a = torch.rand((2,3,10))b = torch.rand((2,2,10))### ma ...

  8. 笔试算法题(56):快速排序实现之非递归实现,最小k值选择(non-recursive version, Minimal Kth Selection of Quick Sort)

    议题:快速排序实现之五(非递归实现,短序列优先处理,减少递归栈大小) 分析: 算法原理:此算法实现适用于系统栈空间不足够快速排序递归调用的需求,从而使用非递归实现快速排序算法:使用显示下推栈存储快速排 ...

  9. Visual Studio 2013/2015/2017快捷键(转载)

    本文为转载文章,原文:[心存善念]  [Fonour] 项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示 Solution Explorer(解 ...

  10. 零基础入门学习Python(7)--了不起的分支和循环1

    前言 我们今天的主题,是了不起的分支和循环,为什么不说c语言,Python了不起,而对分支和循环这两个知识点那么崇拜呢? 我们之前的几节课里也接触到了分支和循环,大家思考一下,如果我们的程序没有分支和 ...