免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

day50-正則表達(dá)式01

正則表達(dá)式015.1正則表達(dá)式的作用

正則表達(dá)式的便利
在一篇文章中,想要提取相應(yīng)的字符,比如提取文章中的所有英文單詞,提取文章中的所有數(shù)字等 。
  1. 傳統(tǒng)方法是:使用遍歷的方式,對文本中的每一個(gè)字符進(jìn)行ASCII碼的對比,如果ASCII碼處于英文字符的范圍,就將其截取下來,再看后面是否有連續(xù)的字符,將連續(xù)的字符拼接成一個(gè)單詞 。這種方式代碼量大,且效率不高 。
  2. 使用正則表達(dá)式
package li.regexp;import java.util.regex.Matcher;import java.util.regex.Pattern;//體驗(yàn)正則表達(dá)式的便利public class Regexp_ {public static void main(String[] args) {//假設(shè)有如下文本String content = "1995年,互聯(lián)網(wǎng)的蓬勃發(fā)展給了Oak機(jī)會 。業(yè)界為了使死板、單調(diào)的靜態(tài)網(wǎng)頁能夠“靈活”起來," +"急需一種軟件技術(shù)來開發(fā)一種程序,這種程序可以通過網(wǎng)絡(luò)傳播并且能夠跨平臺運(yùn)行 。于是,世界各大IT企" +"業(yè)為此紛紛投入了大量的人力、物力和財(cái)力 。這個(gè)時(shí)候,Sun公司想起了那個(gè)被擱置起來很久的Oak,并且" +"重新審視了那個(gè)用軟件編寫的試驗(yàn)平臺,由于它是按照嵌入式系統(tǒng)硬件平臺體系結(jié)構(gòu)進(jìn)行編寫的,所以非常" +"小,特別適用于網(wǎng)絡(luò)上的傳輸系統(tǒng),而Oak也是一種精簡的語言,程序非常小,適合在網(wǎng)絡(luò)上傳輸 。Sun公" +"司首先推出了可以嵌入網(wǎng)頁并且可以隨同網(wǎng)頁在網(wǎng)絡(luò)上傳輸?shù)腁pplet(Applet是一種將小程序嵌入到網(wǎng)" +"頁中進(jìn)行執(zhí)行的技術(shù)),并將Oak更名為Java 。5月23日,Sun公司在Sun world會議上正式發(fā)布Java和" +"HotJava瀏覽器 。IBM、Apple、DEC、Adobe、HP、Oracle、Netscape和微軟等各大公司都紛紛停止" +"了自己的相關(guān)開發(fā)項(xiàng)目,競相購買了Java使用許可證,并為自己的產(chǎn)品開發(fā)了相應(yīng)的Java平臺 。";String content2 = "無類域間路由(CIDR,Classless Inter-Domain Routing)地址根據(jù)網(wǎng)絡(luò)拓?fù)鋪矸峙?,可? +"將連續(xù)的一組網(wǎng)絡(luò)地址分配給一家公司,并使整組地址作為一個(gè)網(wǎng)絡(luò)地址(比如使用超網(wǎng)技術(shù)),在外部路由表上" +"只有一個(gè)路由表項(xiàng) 。這樣既解決了地址匱乏問題,又解決了路由表膨脹的問題 。另外,CIDR還將整個(gè)世界分為四" +"個(gè)地區(qū),給每個(gè)地區(qū)分配了一段連續(xù)的C類地址,分別是:歐洲(194.0.0.0~195.255.255.255)、北美(19" +"8.0.0.0~199.255.255.255)、中南美(200.0.0.0~201.255.255.255)和亞太(202.0.0.0~203.2" +"55.255.255) 。這樣,當(dāng)一個(gè)亞太地區(qū)以外的路由器收到前8位為202或203的數(shù)據(jù)報(bào)時(shí),它只需要將其放到通向亞" +"太地區(qū)的路由即可,而對后24位的路由則可以在數(shù)據(jù)報(bào)到達(dá)亞太地區(qū)后再進(jìn)行處理,這樣就大大緩解了路由表膨脹的問題";//正則表達(dá)式來完成// (1)先創(chuàng)建一個(gè)Pattern對象,模式對象,可以理解成就是一個(gè)正則表達(dá)式對象//Pattern pattern = Pattern.compile("[a-zA-Z]+");//提取文章中的所有英文單詞//Pattern pattern = Pattern.compile("[0-9]+");//提取文章中的所有數(shù)字//Pattern pattern = Pattern.compile("([0-9]+)|([a-zA-Z]+)");//提取文章中的所有的英文單詞和數(shù)字Pattern pattern = Pattern.compile("\\d+\\.\\d+\\.\\d+\\.\\d+");//提取文章中的ip地址// (2)創(chuàng)建一個(gè)匹配器對象// 理解:就是 matcher 匹配器按照pattern(模式/樣式),到content文本中去匹配// 找到就返回true,否則就返回false(如果返回false就不再匹配了)Matcher matcher = pattern.matcher(content2);// (3)可以開始循環(huán)匹配while (matcher.find()) {//匹配到的內(nèi)容和文本,放到 m.group(0)System.out.println("找到:" + matcher.group(0));}}}提取所有英文單詞:
day50-正則表達(dá)式01

文章插圖

day50-正則表達(dá)式01

文章插圖

經(jīng)驗(yàn)總結(jié)擴(kuò)展閱讀