在筛选有用数据的时候,经常会碰见一些没有用的脏数据,如何删选出对自己有用的数据呢,下面我列举一些我常用的jsoup和正则运算的一些简单方法
(我们获取到的数据是result)
第一
譬如 李明,李明,李明
我只想要第一个,该如何去处理呢
可以加一个条件

if(result.contains(",")){
	result= result.split(",")[0].trim();
}

特别注意,注意,里面替换的符号在获取的数据里面复制,因为你不知道里面是不是有什么英文半角什么中文半角符号什么的,不如直接复制数据里面的

第二
如果获取到的数据是
地址:天门市绿豆街 电话:179526548
我们只想要地址该如何处理
加入一个条件

relult = relult.split("地址:")[1].split("电话:")[0];

第3
获取到的数据有数字跟文字
譬如:
111123546
李明
小红
想把获取到的数据去除数字

result = Pattern.compile("[^0-9]").matcher(result).replaceAll("");

上面我们用到了正则表达式
匹配除换行符之外的任意单个的字符 [^\n] (这样可以保留^后面的东西,去除数字的话就把那个符号去掉就行了)
同理啊,要是想去除汉字

result = Pattern.compile("[\u4e00-\u9fa5]").matcher(result).replaceAll("");
这里的   \u4e00-\u9fa5  代表汉字的意思
replaceAll 代表把compile里面的大学替换成空
Pattern类的作用在于编译正则表达式后创建一个匹配模式.
Matcher类使用Pattern实例提供的模式信息对正则表达式进行匹配
/0-9/ 表示数字 0 到 9
/a-z/ 表示小写的a-z
. 匹配除换行符之外的任意单个的字符 [^\n],JavaScript中是-
\d      匹配任意一个十进制数字[0-9]
\D     匹配任意一个非十进制数字[^0-9]
\s      匹配一个不可见原子
\S      匹配一个可见原子
\w     匹配任意一个数字,字母,或下滑线 [0-9A-Za-z_]
\W    匹配任意一个非数字,字母,或下滑线 [0-9A-Za-z_]
^  必须以前面的原子或者原子集合开始
$ 必须以前面的原子或者原子集合结束

以前用过一个在线的工具

其实吧,多写几次就好了,一开始用用就行了,不如自己写的快

第四
如何去除获取数据的html标签
用下面这个方法过一下数据就可以去除大部分html标签了

public static String delHTMLTag(String htmlStr) {
        String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; // 定义script的正则表达式
        String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; // 定义style的正则表达式
        String regEx_html = "<[^>]+>"; // 定义HTML标签的正则表达式
        String regEx_space = "\\s*|\t|\r|\n";// 定义空格回车换行符
        String regEx_w = "<w[^>]*?>[\\s\\S]*?<\\/w[^>]*?>";//定义所有w标签
        Pattern p_w = Pattern.compile(regEx_w, Pattern.CASE_INSENSITIVE);
        Matcher m_w = p_w.matcher(htmlStr);
        htmlStr = m_w.replaceAll(""); // 过滤script标签
        Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
        Matcher m_script = p_script.matcher(htmlStr);
        htmlStr = m_script.replaceAll(""); // 过滤script标签
        Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
        Matcher m_style = p_style.matcher(htmlStr);
        htmlStr = m_style.replaceAll(""); // 过滤style标签
        Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
        Matcher m_html = p_html.matcher(htmlStr);
        htmlStr = m_html.replaceAll(""); // 过滤html标签
        Pattern p_space = Pattern.compile(regEx_space, Pattern.CASE_INSENSITIVE);
        Matcher m_space = p_space.matcher(htmlStr);
        htmlStr = m_space.replaceAll(""); // 过滤空格回车标签
        htmlStr = htmlStr.replaceAll(" ", ""); //过滤
        return htmlStr.trim(); // 返回文本字符串
    }

总结:

数据筛选过滤其实很简单,但是有的数据很乱,不容易选出来有用数据,那么就要本着宁可不要,也要保住正确率的原则(反正我要正确率)等大部分筛选完成了有多的功夫就去筛选那一小部分呗,不能丢了西瓜捡芝麻啊