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;
/**
* @类名:FilterStr
* @描述:正则表达式过滤数字、字母和中文
* @Author:游海东
* @date: 2014年3月12日 下午7:18:20
*/
public class FilterStr
{
/**
*
* @Title : filterNumber
* @Type : FilterStr
* @date : 2014年3月12日 下午7:23:03
* @Description : 过滤出数字
* @param str
* @return
*/
public static String filterNumber(String number)
{
number = number.replaceAll("[^(0-9)]", "");
return number;
}
/**
*
* @Title : filterAlphabet
* @Type : FilterStr
* @date : 2014年3月12日 下午7:28:54
* @Description : 过滤出字母
* @param alph
* @return
*/
public static String filterAlphabet(String alph)
{
alph = alph.replaceAll("[^(A-Za-z)]", "");
return alph;
}
/**
*
* @Title : filterChinese
* @Type : FilterStr
* @date : 2014年3月12日 下午9:12:37
* @Description : 过滤出中文
* @param chin
* @return
*/
public static String filterChinese(String chin)
{
chin = chin.replaceAll("[^(\\u4e00-\\u9fa5)]", "");
return chin;
}
/**
*
* @Title : filter
* @Type : FilterStr
* @date : 2014年3月12日 下午9:17:22
* @Description : 过滤出字母、数字和中文
* @param character
* @return
*/
public static String filter(String character)
{
character = character.replaceAll("[^(a-zA-Z0-9\\u4e00-\\u9fa5)]", "");
return character;
}
/**
* @Title : main
* @Type : FilterStr
* @date : 2014年3月12日 下午7:18:22
* @Description :
* @param args
*/
public static void main(String[] args)
{
/**
* 声明字符串you
*/
String you = "^^^you123$%$%你好";
/**
* 调用过滤出数字的方法
*/
you = filterNumber(you);
/**
* 打印结果
*/
System.out.println("过滤出数字:" + you);
/**
* 声明字符串hai
*/
String hai = "¥%……4556ahihdjsadhj$%$%你好吗wewewe";
/**
* 调用过滤出字母的方法
*/
hai = filterAlphabet(hai);
/**
* 打印结果
*/
System.out.println("过滤出字母:" + hai);
/**
* 声明字符串dong
*/
String dong = "$%$%$张三34584yuojk李四@#¥#%%¥……%";
/**
* 调用过滤出中文的方法
*/
dong = filterChinese(dong);
/**
* 打印结果
*/
System.out.println("过滤出中文:" + dong);
/**
* 声明字符串str
*/
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 {
/**
* 过滤字母
* @param alphabet
* @return
*/
public static String filterAlphabet(String alphabet){
return alphabet.replaceAll("[A-Za-z]", "");
}
/**
* 过滤数字
* @param digital
* @return
*/
public static String filterDigital(String digital){
return digital.replaceAll("[0-9]", "");
}
/**
* 过滤汉字
* @param chin
* @return
*/
public static String filterChinese(String chin){
return chin.replaceAll("[\\u4e00-\\u9fa5]", "");
}
/**
* 过滤 字母、数字、汉字
* @param character
* @return
*/
public static String filterAll(String character){
return character.replaceAll("[a-zA-Z0-9\\u4e00-\\u9fa5]", "");
}
/**
* @param args
*/
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正则表达式过滤中文、字母、数字的全部叙述,希望大家喜欢。
您可能感兴趣的文章:- Java 正则表达式详解
- JAVA正则表达式 Pattern和Matcher
- java中 利用正则表达式提取( )内内容
- Java正则表达式提取字符的方法实例
- Java 正则表达式学习总结和一些小例子
- java正则表达式四种常用的处理方式(匹配、分割、替代、获取)
- JAVA中正则表达式匹配,替换,查找,切割的方法
- java正则表达式验证邮箱、电话号码示例
- java正则表达式提取数字的方法实例
- JAVA正则表达式的基本使用教程