如何利用java正则表达式抽取一段文本中特定的文本信息

比如我有这样的文本存在txt中 aaaaa/fhggg大家tt好uuuuu>uuuuuuuhjh<jhjk 这里边的字母我事先是知道的 怎么才能把汉字提取出来 并存到数组或变量或数据库中呢 多谢高手

package test.function.excel;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Regex {
/**
* @param args
*/
public static void main(String[] args) {
String str="aaaaa/fhggg大家tt好uuuuu>uuuuuuuhjh<jhjk ";
Pattern parrent=Pattern.compile("[\u4e00-\u9fa5]");
Matcher math=parrent.matcher(str);
while(math.find())
{
System.out.print(math.group());
}
}
}
汉字可以提取出来了,然后你可以建一个数组或是数据库对象实例。把提取出来的数据存到里面。这个很简单,自己就可以完成。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-03-07
([^a-zA-Z/<>]+)
大概是这样,匹配一个或无限个连续的不是a-zA-Z/<>的字符,JAVA我不会不过正则表达式都差不多追问

不行啊 我的文本中不是只有a-zA-Z/这些不需要的信息还有很多乱七八糟的符号 没有直接匹配汉字的方法吗

追答

[\x{4e00}-\x{9fa5}] //UTF8编码
"/([".chr(0xb0)."-".chr(0xf7)."][".chr(0xa1)."-".chr(0xfe)."])/" //ANSI(gb2312)编码
以上是PHP的,UTF8我试了下可以,ANSI好像有点问题,至于JAVA我想应该也差不多吧

本回答被提问者采纳
相似回答