日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > php教程 > Java正則表達式應(yīng)用

Java正則表達式應(yīng)用

來源:程序員人生   發(fā)布時間:2017-01-23 20:05:41 閱讀次數(shù):2720次

學(xué)習(xí)Java的同學(xué)注意了!!! 
學(xué)習(xí)進程中遇到甚么問題或想獲得學(xué)習(xí)資源的話,歡迎加入Java學(xué)習(xí)交換群,群號碼:183993990  我們1起學(xué)Java!


1:抓取網(wǎng)頁中的Email地址

利用正則表達式匹配網(wǎng)頁中的文本

[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+

將網(wǎng)頁內(nèi)容分割提取

復(fù)制代碼
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class EmailSpider {

    public static void main(String[] args) {
        try {
            BufferedReader br = new BufferedReader(new FileReader("C:\\emailSpider.html"));
            String line = "";
            while((line=br.readLine()) != null) {
                parse(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static void parse(String line) {
        Pattern p = Pattern.compile("[\\w[.-]]+@[\\w[.-]]+\\.[\\w]+");
        Matcher m = p.matcher(line);
        while(m.find()) {
            System.out.println(m.group());
        }
    }

}
復(fù)制代碼

打印結(jié)果:

復(fù)制代碼
867124664@qq.com
260678675@QQ.com
806208721@qq.com
hr_1985@163.com
32575987@qq.com
qingchen0501@126.com
yingyihanxin@foxmail.com
1170382650@qq.com
1170382650@qq.com
yingyihanxin@foxmail.com
qingchen0501@126.com
32575987@qq.com
hr_1985@163.com
復(fù)制代碼

現(xiàn)在你找到這么多郵箱地址,用上JavaMail的知識,你可以群發(fā)垃圾郵件了,呵呵!!!

2:代碼統(tǒng)計

復(fù)制代碼
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class CodeCounter {
    
    static long normalLines = 0;//正常代碼行
    static long commentLines = 0;//注釋行
    static long whiteLines = 0;//空白行
    
    public static void main(String[] args) {
        //找到某個文件夾,該文件夾下面在沒有文件夾,這里沒有寫遞歸處理不在同1文件夾的文件
        File f = new File("E:\\Workspaces\\eclipse\\Application\\JavaMailTest\\src\\com\\java\\mail");
        File[] codeFiles = f.listFiles();
        for(File child : codeFiles){
            //只統(tǒng)計java文件
            if(child.getName().matches(".*\\.java$")) {
                parse(child);
            }
        }
        
        System.out.println("normalLines:" + normalLines);
        System.out.println("commentLines:" + commentLines);
        System.out.println("whiteLines:" + whiteLines);
        
    }

    private static void parse(File f) {
        BufferedReader br = null;
        //表示是不是為注釋開始
        boolean comment = false;
        try {
            br = new BufferedReader(new FileReader(f));
            String line = "";
            while((line = br.readLine()) != null) {
                //去掉注釋符/*前面可能出現(xiàn)的空白
                line = line.trim();
                //空行 由于readLine()將字符串取出來時,已去掉了換行符\n
                //所以不是"^[\\s&&[^\\n]]*\\n$"
                if(line.matches("^[\\s&&[^\\n]]*$")) {
                    whiteLines ++;
                } else if (line.startsWith("/*") && !line.endsWith("*/")) {
                    //統(tǒng)計多行/*****/
                    commentLines ++;
                    comment = true;    
                } else if (line.startsWith("/*") && line.endsWith("*/")) {
                    //統(tǒng)計1行/**/
                    commentLines ++;
                } else if (true == comment) {
                    //統(tǒng)計*/
                    commentLines ++;
                    if(line.endsWith("*/")) {
                        comment = false;
                    }
                } else if (line.startsWith("//")) {
                    commentLines ++;
                } else {
                    normalLines ++;
                }
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if(br != null) {
                try {
                    br.close();
                    br = null;
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

}
復(fù)制代碼

學(xué)習(xí)Java的同學(xué)注意了!!! 
學(xué)習(xí)進程中遇到甚么問題或想獲得學(xué)習(xí)資源的話,歡迎加入Java學(xué)習(xí)交換群,群號碼:183993990  我們1起學(xué)Java!

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 91精品国产综合久久久久 | a在线免费 | 精品午夜视频 | 在线看av的网址 | 日韩中文在线 | 国产精品一区二区三区免费视频 | 激情欧美一区二区三区中文字幕 | 国产成人久久精品麻豆二区 | 精品成人| 午夜精品久久久久久久99无限制 | 国产激情在线 | 亚洲最大福利网站 | 国产污视频在线 | 91视频插插插 | 91在线精品秘密一区二区 | 国产精品久久久久久久久久浪潮 | 国产精品久久 | 国产精品成人3p一区二区三区 | 成人国产精品久久 | 欧美日韩激情视频 | 国产一区二区视频在线 | 国产一区一一区高清不卡 | 国产在线一区二区三区视频 | 久久骚| 欧美在线视频免费观看 | 成人h精品动漫一区二区三区 | 久久不射网| 日韩成人一区 | 久久久www成人免费无遮挡大片 | 黄色短视频在线观看 | 看片地址 | 成人欧美一区二区三区黑人免费 | 成人国产精品免费网站 | av黄在线 | 精品一级毛片 | 伊人精品成人久久综合软件 | 国产精品传媒麻豆hd | 成人在线视频网 | 日韩一区二区三区四区 | 国产精品福利小视频 | 国产综合视频在线观看 |