java正則表達(dá)式四種常用的處理方式(匹配、分割、替代、獲取)
更新時間:2016年06月08日 14:52:04 投稿:lijiao
這篇文章主要為大家詳細(xì)介紹了java正則表達(dá)式四種常用的處理方式,包括匹配、分割、替代、獲取四種,感興趣的小伙伴們可以參考一下
java 正則表達(dá)式高級篇,介紹四種常用的處理方式:匹配、分割、替代、獲取,具體內(nèi)容如下
package test;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 正則表達(dá)式
* 正則表達(dá)式 的用法主要是4種方面的使用
* 匹配,分割,替換,獲取.
* 用一些簡單的符號來代表代碼的操作
* @author cyc
*
*/
public class Rex {
public static void main(String[] args) {
//針對字符串處理
Rex reg = new Rex();
//校驗qq的reg正則表達(dá)式
//這里的\w 是指的是[a-zA-Z0-9],還有一個重要的是?,*.+這三個分別
//?表示出現(xiàn)1次或者1次都沒有,
//+表示出現(xiàn)1次或者n次,
//*表示出現(xiàn)0次或者n次,
//還有些特殊的寫法X{n}恰好n次X{n,}至少n次,X{n,m}n次到m次,
String mathReg = "[1-9]\\d{4,19}";
String divisionReg = "(.)\\1+";
//\\b 是指的邊界值
String getStringReg = "\\b\\w{3}\\b";
//字符串匹配(首位是除0 的字符串)
reg.getMatch("739295732",mathReg);
reg.getMatch("039295732",mathReg);
//字符串的替換
//去除疊詞
reg.getReplace("12111123ASDASDAAADDD",divisionReg,"$1");
//字符串的分割
//切割疊詞,重復(fù)的
//這里要知道一個組的概念(.)\\1第二個和第一個至相同
reg.getDivision("aadddddasdasdasaaaaaassssfq",divisionReg);
//字符串的獲取
//現(xiàn)在獲取三個字符串取出
reg.getString("ming tian jiu yao fangjia le ",getStringReg);
}
/**
* 獲取查詢的字符串
* 將匹配的字符串取出
*/
private void getString(String str, String regx) {
//1.將正在表達(dá)式封裝成對象Patten 類來實現(xiàn)
Pattern pattern = Pattern.compile(regx);
//2.將字符串和正則表達(dá)式相關(guān)聯(lián)
Matcher matcher = pattern.matcher(str);
//3.String 對象中的matches 方法就是通過這個Matcher和pattern來實現(xiàn)的。
System.out.println(matcher.matches());
//查找符合規(guī)則的子串
while(matcher.find()){
//獲取 字符串
System.out.println(matcher.group());
//獲取的字符串的首位置和末位置
System.out.println(matcher.start()+"--"+matcher.end());
}
}
/**
* 字符串的分割
*/
private void getDivision(String str, String regx) {
String [] dataStr = str.split(regx);
for(String s:dataStr){
System.out.println("正則表達(dá)式分割++"+s);
}
}
/**
* 字符串的替換
*/
private void getReplace(String str, String regx,String replaceStr) {
String stri = str.replaceAll(regx,replaceStr) ;
System.out.println("正則表達(dá)式替換"+stri);
}
/**
* 字符串處理之匹配
* String類中的match 方法
*/
public void getMatch(String str, String regx){
System.out.println("正則表達(dá)匹配"+str.matches(regx));
}
}
以上就是Java正則表達(dá)式的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助
相關(guān)文章
asp.net 正則表達(dá)式[經(jīng)常用的到]
經(jīng)常用的到的一些正則表達(dá)式,正則規(guī)則是這樣寫的,大家可以根據(jù)自己的需要,用各種語言調(diào)用即可2008-11-11
正則表達(dá)式實現(xiàn)手機號中間4位數(shù)隱藏或者只顯示末尾四位數(shù)
這篇文章主要介紹了正則表達(dá)式實現(xiàn)手機號中間4位數(shù)隱藏或者只顯示末尾四位數(shù)的相關(guān)知識,需要的朋友可以參考下2018-11-11
正則表達(dá)式在網(wǎng)頁處理中的應(yīng)用四則
正則表達(dá)式(Regular Expression)為字符串模式匹配提供了一種高效、方便的方法。幾乎所有高級語言都提供了對正則表達(dá)式的支持,或者提供了現(xiàn)成的代碼庫供調(diào)用。本文以ASP環(huán)境中常見的處理任務(wù)為例,介紹正則表達(dá)式的應(yīng)用技巧。2008-04-04
用正則表達(dá)式匹配字符串中漢字及中文標(biāo)點符號
正則表達(dá)式通常用于判斷某一個字符串是否符合或滿足某一種格式,下面這篇文章主要給大家介紹了關(guān)于如何使用正則表達(dá)式匹配字符串中漢字及中文標(biāo)點符號的相關(guān)資料,需要的朋友可以參考下2022-07-07

