1、Java中过滤出字母、数字和中文的正则表达式
(1)过滤出字母的正则表达式
[^(A-Za-z)]
(2) 过滤出 数字 的正则表达式
[^(0-9)]
(3) 过滤出 中文 的正则表达式
[^(\u4e00-\u9fa5)]
(4) 过滤出字母、数字和中文的正则表达式
[^(a-zA-Z0-9\u4e00-\u9fa5)]
2、实例源码
**
* @Title:FilterStr.java
* @Package:com.you.dao
* @Description:Java中过滤数字、字母和中文
* @Author: 游海东
* @date: 2014年3月12日 下午7:18:20
* @Version V1.2.3
*/
package com.you.dao;
public class FilterStr
{
public static String filterNumber(String number)
{
number = number.replaceAll("[^(0-9)]", "");
return number;
}
public static String filterAlphabet(String alph)
{
alph = alph.replaceAll("[^(A-Za-z)]", "");
return alph;
}
public static String filterChinese(String chin)
{
chin = chin.replaceAll("[^(\u4e00-\u9fa5)]", "");
return chin;
}
public static String filter(String character)
{
character = character.replaceAll("[^(a-zA-Z0-9\u4e00-\u9fa5)]", "");
return character;
}
public static void main(String[] args)
{
String you = "^&^&^you123$%$%你好";
you = filterNumber(you);
System.out.println("过滤出数字:" + you);
String hai = "¥%……4556ahihdjsadhj$%$%你好吗wewewe";
hai = filterAlphabet(hai);
System.out.println("过滤出字母:" + hai);
String dong = "$%$%$张三34584yuojk李四@#¥#%%¥……%&";
dong = filterChinese(dong);
System.out.println("过滤出中文:" + dong);
String str = "$%$%$张三34584yuojk李四@#¥#%%¥……%&";
str = filter(str);
System.out.println("过滤出字母、数字和中文:" + str);
}
}
3、实例运行结果
过滤出数字:123
过滤出字母:ahihdjsadhjwewewe
过滤出中文:张三李四
过滤出字母、数字和中文:张三34584yuojk李四
ps:Java正则表达式过滤汉字
String str = "hello你好吗,我很好 thank you";
String reg = "[u2E80-u9FFF]";
Pattern pat = Pattern.compile(reg);
Matcher mat = pat.matcher(str);
String repickStr = mat.replaceAll("");
System.out.println("过滤中文后: "+repickStr);
Demo:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class T {
public static String filterAlphabet(String alphabet){
return alphabet.replaceAll("[A-Za-z]", "");
}
public static String filterDigital(String digital){
return digital.replaceAll("[0-9]", "");
}
public static String filterChinese(String chin){
return chin.replaceAll("[\u4e00-\u9fa5]", "");
}
public static String filterAll(String character){
return character.replaceAll("[a-zA-Z0-9\u4e00-\u9fa5]", "");
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "hello你好吗,我很好 thank you";
String reg = "[u2E80-u9FFF]";
Pattern pat = Pattern.compile(reg);
Matcher mat = pat.matcher(str);
String repickStr = mat.replaceAll("");
System.out.println("过滤中文后: "+repickStr);
System.out.println("-----------------");
System.out.println(filterAlphabet("123abc你好"));
System.out.println(filterDigital("123abc你好"));
System.out.println(filterChinese("123abc你好"));
System.out.println(filterAll("123abc你好"));
}
}
以上内容是关于java正则表达式过滤中文、字母、数字的全部叙述,希望大家喜欢。



