读书人

请教如何提取字符串中的中文和数字

发布时间: 2012-01-16 23:36:51 作者: rapoo

请问怎么提取字符串中的中文和数字?
比如一个字符串 "sjkjlfdks你好as!kj556asd <hjkd> x "

我要提取里面的 "你好 "和 "556 "

[解决办法]
Pattern pcn=Pattern.compile( "[\u4e00-\u9fa5]+ ");
Pattern pd = Pattern.compile( "\\d+ ");
String str= "sjkjlfdks你好as!kj556asd <hjkd> x ";
Matcher m = pcn.matcher(str);
if(m.find()){
System.out.println( "中文: "+m.group());
}

m = pd.matcher(str);
if(m.find()){
System.out.println( "数字: "+m.group());
}
[解决办法]
String str= "sjkjlfdks你好as!kj556asd <hjkd> x ";//要被查找的字符串
String str1= "你好 ";//你要提取的字符串
StringBuffer sb =new StringBuffer();

int c= str.indexOf(str1);
System.out.println(str.substring(c, str1.length()));
for(int i=0 ;i <str.length();i++){
char ch=str.charAt(i);
for(int m=0;m <10;m++){
String str1=String.valueOf(m);
if(str1.equals(String.valueOf(ch)))sb.append(ch);
}
}
System.out.println(sb);
要是字符串中有多个数字字符串像 "1111你好1111 "
区分开来输出的话,就在加if判断。

不知道这个对你有没有帮助!

读书人网 >J2SE开发

热点推荐