最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java使用正則抓取網(wǎng)頁郵箱

 更新時間:2016年05月27日 08:41:55   投稿:lijiao  
這篇文章主要為大家詳細介紹了java使用正則抓取網(wǎng)頁郵箱的相關資料,感興趣的小伙伴們可以參考一下

使用正則抓捕網(wǎng)上郵箱

這就是我們需要抓捕的網(wǎng)站。

實現(xiàn)思路:

1、使用java.net.URL對象,綁定網(wǎng)絡上某一個網(wǎng)頁的地址
2、通過java.net.URL對象的openConnection()方法獲得一個HttpConnection對象
3、通過HttpConnection對象的getInputStream()方法獲得該網(wǎng)絡文件的輸入流對象InputStream
4、循環(huán)讀取流中的每一行數(shù)據(jù),并由Pattern對象編譯的正則表達式區(qū)配每一行字符,取得email地址

下面是我們的代碼:

package cn.bdqn;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
//和網(wǎng)絡相關的操作
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 正則抓取郵箱
 * @author happy
 *
 */
public class Test {
 public static void main(String[] args) throws IOException {
  //1.1 創(chuàng)建一個url對象
  URL url = new URL("https://www.douban.com/group/topic/8845032/"); 
  //1.2 打開連接 
  URLConnection conn = url.openConnection(); 
  //1.3 設置連接網(wǎng)絡超時時間 單位為毫秒
  conn.setConnectTimeout(1000 * 10); 
  //1.4 通過流 操作讀取指定網(wǎng)絡地址中的文件 
  BufferedReader bufr = new BufferedReader(new InputStreamReader(conn.getInputStream())); 
  String line = null; 
  //1.5 匹配email的正則
  String regex = "[a-zA-Z0-9_-]+@\\w+\\.[a-z]+(\\.[a-z]+)?";
  //1.6 使用模式的compile()方法生成模式對象
  Pattern p = Pattern.compile(regex); 
  //1. 
  while((line = bufr.readLine()) != null) { 
   Matcher m = p.matcher(line); 
   while(m.find()) { 
    System.out.println(m.group());// 獲得匹配的email 
   } 
  } 
 }
}

這里主要是利用正則來匹配郵箱:

String regex = "[a-zA-Z0-9_-]+@\\w+\\.[a-z]+(\\.[a-z]+)?";

[a-zA-Z0-9_-]只能包含字母、數(shù)字、下劃線、減號,”+ ”的話就是匹配[a-zA-Z0-9_-]一次或多次,@后可以出現(xiàn)任何非單字符等價于[^a-zA-Z0-9_],他可以重復出現(xiàn)一次或多次,結(jié)束后必須要有\(zhòng).是給.做轉(zhuǎn)義的,然后點后可以出現(xiàn)a到z之間的任意字符。

捕獲的結(jié)果如下:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • RabbitMQ?延遲隊列實現(xiàn)訂單支付結(jié)果異步階梯性通知(實例代碼)

    RabbitMQ?延遲隊列實現(xiàn)訂單支付結(jié)果異步階梯性通知(實例代碼)

    這篇文章主要介紹了RabbitMQ?延遲隊列實現(xiàn)訂單支付結(jié)果異步階梯性通知,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • idea maven 構(gòu)建本地jar包及pom文件的過程

    idea maven 構(gòu)建本地jar包及pom文件的過程

    這篇文章主要介紹了idea maven 構(gòu)建本地jar包及pom文件的過程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • java多線程從入門到精通看這篇就夠了

    java多線程從入門到精通看這篇就夠了

    熟悉 Java 多線程編程的同學都知道,當我們線程創(chuàng)建過多時,容易引發(fā)內(nèi)存溢出,因此我們就有必要使用線程池的技術了,今天通過本文給大家分享java多線程從入門到精通的相關知識,一起看看吧
    2021-06-06
  • Java計算兩個程序運行時間的實例

    Java計算兩個程序運行時間的實例

    下面小編就為大家?guī)硪黄狫ava計算兩個程序運行時間的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • vue3實現(xiàn)一個todo-list

    vue3實現(xiàn)一個todo-list

    這篇文章主要為大家詳細介紹了基于vuejs實現(xiàn)一個todolist項目,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能給你帶來幫助
    2021-08-08
  • Java如何處理圖片保存之后變紅色的問題

    Java如何處理圖片保存之后變紅色的問題

    這篇文章主要介紹了Java如何處理圖片保存之后變紅色的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 有關IntelliJ IDEA中LeetCode插件配置問題

    有關IntelliJ IDEA中LeetCode插件配置問題

    這篇文章主要介紹了關于IntelliJ IDEA中LeetCode插件配置問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • FreeMarker配置(Configuration)

    FreeMarker配置(Configuration)

    所有與該configuration 對象關聯(lián)的模版實例都就可以通過獲得to_upper 轉(zhuǎn)換器,company 來獲得字符串,因此你不需要再一次次的往root 中添加這些變量了。如果你往root 添加同名的變量,那么你新添加的變量將會覆蓋之前的共享變量。
    2016-04-04
  • 詳解Java泛型中類型擦除問題的解決方法

    詳解Java泛型中類型擦除問題的解決方法

    Java泛型的實現(xiàn)是不完整的,有時會遇到一些Java泛型類型擦除的問題。本文將詳細為大家講解Java泛型中類型擦除問題的解決方法,需要的可以參考一下
    2022-05-05
  • Java實現(xiàn)簡單樹結(jié)構(gòu)

    Java實現(xiàn)簡單樹結(jié)構(gòu)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)簡單樹結(jié)構(gòu)的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01

最新評論

江门市| 鹤庆县| 琼海市| 安阳县| 临沂市| 黄山市| 和平区| 海林市| 扎兰屯市| 荃湾区| 颍上县| 旬阳县| 灌阳县| 萨嘎县| 泊头市| 兴和县| 平邑县| 麦盖提县| 潮安县| 龙陵县| 太康县| 鱼台县| 龙江县| 任丘市| 咸宁市| 彰武县| 沙洋县| 内乡县| 二连浩特市| 平湖市| 盘山县| 三都| 新乡县| 茂名市| 乌拉特后旗| 香港 | 灵璧县| 吉安市| 安仁县| 安国市| 恩施市|