1.Java中过滤出字母、数字和中文的正则表达式
(1)过滤出字母的正则表达式
[^(A-Za-z)]
(2)过滤出数字的正则表达式
[^(0-9)]
(3)过滤出中文的正则表达式
[^(\\u4e00-\\u9fa5)]
(4)过滤出字母、数字和中文的正则表达式
[^(a-zA-Z0-9\\u4e00-\\u9fa5)]
总(标点符号):
str.replaceAll("[^0-9a-zA-Z\u4e00-\u9fa5.,,。?“”]+","")
2.源码实现
publicclassFilterStr
{
/**
*
*@Title:filterNumber
*@Type:FilterStr
*@Description:过滤出数字
*@paramstr
*@return
*/
publicstaticStringfilterNumber(Stringnumber)
{
number=number.replaceAll("[^(0-9)]","");
returnnumber;
}
/**
*
*@Title:filterAlphabet
*@Type:FilterStr
*@Description:过滤出字母
*@paramalph
*@return
*/
publicstaticStringfilterAlphabet(Stringalph)
{
alph=alph.replaceAll("[^(A-Za-z)]","");
returnalph;
}
/**
*
*@Title:filterChinese
*@Type:FilterStr
*@Description:过滤出中文
*@paramchin
*@return
*/
publicstaticStringfilterChinese(Stringchin)
{
chin=chin.replaceAll("[^(\\u4e00-\\u9fa5)]","");
returnchin;
}
/**
*
*@Title:filter
*@Type:FilterStr
*@Description:过滤出字母、数字和中文
*@paramcharacter
*@return
*/
publicstaticStringfilter(Stringcharacter)
{
character=character.replaceAll("[^(a-zA-Z0-9\\u4e00-\\u9fa5)]","");
returncharacter;
}
/**
*@Title:main
*@Type:FilterStr
*@Description:
*@paramargs
*/
publicstaticvoidmain(String[]args)
{
/**
*声明字符串you
*/
Stringyou="^&^&^you123$%$%你好";
/**
*调用过滤出数字的方法
*/
you=filterNumber(you);
/**
*打印结果
*/
System.out.println("过滤出数字:"+you);
/**
*声明字符串hai
*/
Stringhai="¥%……4556ahihdjsadhj$%$%你好吗wewewe";
/**
*调用过滤出字母的方法
*/
hai=filterAlphabet(hai);
/**
*打印结果
*/
System.out.println("过滤出字母:"+hai);
/**
*声明字符串dong
*/
Stringdong="$%$%$张三34584yuojk李四@#¥#%%¥……%&";
/**
*调用过滤出中文的方法
*/
dong=filterChinese(dong);
/**
*打印结果
*/
System.out.println("过滤出中文:"+dong);
/**
*声明字符串str
*/
Stringstr="$%$%$张三34584yuojk李四@#¥#%%¥……%&";
/**
*调用过滤出字母、数字和中文的方法
*/
str=filter(str);
/**
*打印结果
*/
System.out.println("过滤出字母、数字和中文:"+str);
}
}