锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
package org.zy.demo;
import java.io.BufferedInputStream;
import java.io.Reader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
聽(tīng)* a testing demo of regular express
聽(tīng)* @author zy
聽(tīng)*
聽(tīng)*/
public class RegularExpDemo {
聽(tīng)聽(tīng) 聽(tīng)public static void main(String[] args) {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)RegularExpDemo red = new RegularExpDemo();
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)red.match();
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)red.split();
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)red.replace();
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)red.delete();
聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)/*
聽(tīng)聽(tīng) 聽(tīng) * just test match @param parent @param son
聽(tīng)聽(tīng) 聽(tīng) */
聽(tīng)聽(tīng) 聽(tīng)public void match() {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String parent = "abcdefdssdefdsfed";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String son = "d(ef)";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Pattern p = Pattern.compile(son);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Matcher m = p.matcher(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)while (m.find()) {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(" start聽(tīng) :聽(tīng) " + m.start());
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(" end : " + m.end());
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)/*
聽(tīng)聽(tīng) 聽(tīng) * just test split
聽(tīng)聽(tīng) 聽(tīng) */
聽(tīng)聽(tīng) 聽(tīng)public void split() {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String parent = "a/b/c/d/e/f/sd/ikshk/alke";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String son = "/";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Pattern p = Pattern.compile(son);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String[] lstr = p.split(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)int i = 0;
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)while (i < lstr.length) {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(lstr[i]);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)i++;
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)/*
聽(tīng)聽(tīng) 聽(tīng) * test replace
聽(tīng)聽(tīng) 聽(tīng) */
聽(tīng)聽(tīng) 聽(tīng)public void replace() {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String parent = "abcdefdssdefdsfed";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String son = "d[e|s].";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Pattern p = Pattern.compile(son);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Matcher m = p.matcher(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String lStr = m.replaceAll("ccgg");
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(lStr);
聽(tīng)聽(tīng) 聽(tīng)}
聽(tīng)聽(tīng) 聽(tīng)/*
聽(tīng)聽(tīng) 聽(tīng) * test delete
聽(tīng)聽(tīng) 聽(tīng) */
聽(tīng)聽(tīng) 聽(tīng)public void delete() {
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String parent = "abcdefdssdefdsfed";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String son = "d[e|s].";
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Pattern p = Pattern.compile(son);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)Matcher m = p.matcher(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)String lStr = m.replaceAll("");
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(parent);
聽(tīng)聽(tīng) 聽(tīng)聽(tīng)聽(tīng) 聽(tīng)System.out.println(lStr);
聽(tīng)聽(tīng) 聽(tīng)}
}
]]>
鍦ㄦ錛屾垜浠尮閰嶇┖琛岀敤鐨勬槸
(\r\n)*
榪欐牱錛屽氨鍙互鍖歸厤澶氫釜絀鴻錛屽悓鏃剁敤null鏉ユ浛浠o紝灝卞彲浠ュ疄鐜板垹闄ょ┖琛屻傛鏂規(guī)鏄熀浜庡\r鍜孿n鐨勪嬌鐢ㄣ?br />
浠ュ墠鍦ㄧ綉涓婄湅鍒頒竴縐嶅疄鐜版槸錛?br />\n[\s| ]*\r
鍖歸厤涔嬪悗錛岀敤null鏇夸唬錛屼篃鍙互瀹炵幇鍒犻櫎絀鴻錛屾晥鏋滃涓嬪浘錛?br />
涓ょ鏂規(guī)閮借兘瀹炵幇鐩稿悓鐨勬晥鏋溿?br />
濡傛灉鏈夊叾浠栫殑涓嶅悓鐞嗚В錛岃鍙戣〃璇勮錛屽ぇ瀹跺叡鍚岃繘姝ャ?br />
鎴戝張鍋氫簡(jiǎn)浠ヤ笅嫻嬭瘯錛屽涓嬪浘錛?br />
浠呯敤浜?br />\n\r
灝卞畬鍏ㄥ疄鐜頒簡(jiǎn)鍒犻櫎鎵鏈夌殑絀鴻錛屽洜涓哄湪姣忎竴涓┖琛岀殑寮澶村拰緇撳熬閮芥槸
\n\r
鎵浠ワ紝鍒犻櫎浜?jiǎn)涓婁竴琛屼箣鍚庯紝褰撳墠琛岃繕鏈変竴涓猏n\r,鍚屾牱鑳藉鍖歸厤涓婏紝鎵浠ワ紝榪樿鍦ㄥ仛鏇夸唬鎿嶄綔銆傝繖鏍鳳紝灝卞彲浠ュ垹闄ゆ墍鏈夌殑絀鴻浜?jiǎn)銆?br />閭o紝濡傛灉鏄?br />\r\n錛屾晥鏋滃浣曞憿錛?br />鎴戝張鍋氫簡(jiǎn)涓涓嬫祴璇曪紝鏁堟灉濡備笅鍥撅細(xì)
榪欎釜灝變笉鏄垜浠兂瑕佺殑緇撴灉錛庝負(fù)浠涔堝憿錛?br />鎴戞兂錛屾垜浠彲浠ヨ繖鏍風(fēng)悊瑙o紝
C:\Program Files\Common Files\Relive.dll聽(tīng)
C:\Program Files\Common Files\svchost.exe
C:\Program Files\Internet Explorer\msvcrt.bak
C:\Program Files\Internet Explorer\msvcrt.dll
C:\Program Files\Internet Explorer\msvcrt.ebk
聽(tīng)
C:\WINNT\system32\drivers\npf.sys
C:\WINNT\system32\wpcap.dll
C:\WINNT\system32\Packet.dll
C:\WINNT\system32\WanPacket.dll
C:\Documents and Settings\User name\Local Settings\Temp\wmso.exe
C:\Documents and Settings\User name\Local Settings\Temp\BCG5.tmp
榪欎釜鏄師濮嬫枃鏈紝鍏跺疄錛屽湪鎴戜滑榪涜鏂囨湰澶勭悊鐨勬椂鍊欙紝鎴戜滑鍙互榪欐牱鎶婄┖琛岋紝鐢?br />\r\n(鍥炶濺鎹㈣錛屽厛鍥炶濺錛屽悗鎹㈣)
鏉ユ浛鎹㈡帀錛庢枃鏈氨鏄細(xì)
C:\Program Files\Common Files\Relive.dll\r\n\r\nC:\Program Files\Common Files\svchost.exe\r\n\r\nC:\Program Files\Internet Explorer\msvcrt.bak\r\nC:\Program Files\Internet Explorer\msvcrt.dll\r\n\nC:\Program Files\Internet Explorer\msvcrt.ebk\r\n\r\n\r\n\r\nC:\WINNT\system32\drivers\npf.sys\r\nC:\WINNT\system32\wpcap.dll\r\nC:\WINNT\system32\Packet.dll\r\nC:\WINNT\system32\WanPacket.dll\r\n\r\nC:\Documents and Settings\User name\Local Settings\Temp\wmso.exe\r\nC:\Documents and Settings\User name\Local Settings\Temp\BCG5.tmp\r\n\r\n\r\n
榪欎竴孌墊枃鏈槸涓涓暣浣擄紝娌℃湁鍥炶濺錛屾病鏈夌┖闅欏拰闂撮殧錛岃繖鏄垜浠鍦ㄥ鐞嗙殑鏂囨湰錛屽彧涓嶈繃鍥炶濺鎹㈣鏄笉鍙瀛楃錛屾墍浠ュ氨涓嶈兘鐪嬪埌錛屼絾鏄繕鏄瓨鍦ㄧ殑錛?br />鎵浠ワ紝鍦ㄥ鐞嗙殑鏃跺欐墠浼?xì)鍑虹幇鎴戜滑涓婇潰鐨勬儏鍐靛Q?br />鏈夋錛屾垜浠彲浠ョ悊瑙d負(fù)浠涔?br />鐢╘r\n鍖歸厤鍜屾浛浠e悗錛?br />鎵鏈夌殑\r\n閮芥病鏈変簡(jiǎn)錛屾墍浠ワ紝鏂囨湰錛屽氨鎴愪負(fù)浜?jiǎn)涓涓繛鎺ョ殑綰瓧絎︽枃鏈簡(jiǎn)錛?br />浣嗘槸
\n\r
鏇挎崲鍚庯紝
涓棿鐨勬墍鏈夌殑\n\r閮芥浛浠f帀浜?\r(\n\r鈥︹n\r)\n錛屼腑闂寸殑閮ㄥ垎閮芥浛浠f帀浜?jiǎn)銆傛墍浠ュ氨鍓╂渶鍚庣殑涓涓猏r\n.
浠ヤ笂鏄垜鐨勪竴鐐圭悊瑙c?br />
[\d]{4}-[\d]{2}-[\d]{2}
榪欎釜鏄垜鐪嬪埌鐨勪竴涓棩鏈熼獙璇佺殑姝e垯琛ㄨ揪寮忋?/span>
鐪嬭搗鏉ヨ兘瀹炵幇錛屽洜涓?/span>
2006-6-6 鑲畾鏄笉絎﹀悎鐨勶紝鑰?/span>
2006-06-06 鑲畾鏄鍚堢殑銆?/span>
浣嗘槸錛屾垜浠潵鐪嬶紝
2006-00-00 涔熻偗瀹氭槸絎﹀悎鐨勶紝浣嗘槸錛屾湁鎰忎箟鍚楋紵
2006-99-99 涔熻偗瀹氭槸絎﹀悎鐨勶紝浣嗘槸錛屾湁鎰忎箟鍚楋紵
絳旀錛屽ぇ瀹墮兘鐭ラ亾錛岃偗瀹氭病鏈夋剰涔夈傛墍浠ワ紝鎴戣寰楄繖涓〃杈懼紡榪樻湁瑕佹敼榪涚殑鍦版柟銆?/span>
闂鐨勫叧閿槸鏁板煎ぇ灝忕殑闄愬埗錛屽浣曟潵闄愬埗錛?/span>
鎴戞妸瀹冩敼榪涗簡(jiǎn)涓涓嬶細(xì)
[\d]{4}-[0-1][0-9]-[0-3][0-9]
鎴戜滑涔嶄竴鐪嬶紝瑙夊緱鍙錛?/span>
2006-19-39 鑲畾絎﹀悎錛屼絾鏄病鏈夋剰涔夈?/span>
鐪嬫潵錛岃繕鏄湁闂銆?/span>
鍒扮幇鍦紝鎴戜篃娌℃湁鎯蟲(chóng)竻妤氳繖涓湅浼肩畝鍗曠殑闂濡備綍鏉ヨВ鍐熾?/span>
濡傛灉鐢ㄨ繖涓〃杈懼紡鏉ユ楠屾棩鏈熺殑璇濓紝鏄笉琛岀殑錛岃繕闇瑕佷綘榪涜鏁板艱寖鍥寸殑楠岃瘉銆?/span>
濡傛灉鍝綅鏈嬪弸鐭ラ亾鐨勮瘽錛岃鎸囩偣涓浜屻傝阿璋€?br />