java中 利用正則表達式提取( )內(nèi)內(nèi)容
昨天遇到一個小問題,需要批量處理一些用戶,而前臺傳來的用戶格式如下,要提取括號中間的內(nèi)容(不帶括號)
教師10(0010)
教師11(0011)
教師9(009)
教師12(0012)
教師13(0013)
教師14(0014)
本來想用java的String.split()和substring()來搞定,但是需要處理多次比較麻煩,就用正則表達式了。雖然語法忘得差不多了,但是印象中用斷言比較方便(關(guān)鍵希望結(jié)果不帶括號)。打開RegexBuddy試了下,輕松搞定:
下邊是java實現(xiàn)代碼:
public List<String> getTeacherList(String managers){
List<String> ls=new ArrayList<String>();
Pattern pattern = Pattern.compile("(?<=\\()(.+?)(?=\\))");
Matcher matcher = pattern.matcher(managers);
while(matcher.find())
ls.add(matcher.group());
return ls;
}
最后附一下用到的零寬斷言:
寬斷言 | (?=exp) | 匹配exp前面的位置 |
---|---|---|
(?<=exp) | 匹配exp后面的位置 | |
(?!exp) | 匹配后面跟的不是exp的位置 | |
(?<!exp) | 匹配前面不是exp的位置 |
相關(guān)文章
SpringBoot中并發(fā)定時任務(wù)的實現(xiàn)、動態(tài)定時任務(wù)的實現(xiàn)(看這一篇就夠了)推薦
這篇文章主要介紹了SpringBoot并發(fā)定時任務(wù)動態(tài)定時任務(wù)實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04Java 將文件轉(zhuǎn)為字節(jié)數(shù)組知識總結(jié)及實例詳解
這篇文章主要介紹了Java 將文件轉(zhuǎn)為字節(jié)數(shù)組實例詳解的相關(guān)資料,需要的朋友可以參考下2016-12-12Java生成N個不重復的隨機數(shù)的三種方法總結(jié)
這篇文章主要為大家詳細介紹了三種Java生成N個不重復的隨機數(shù)的方法,文中的示例代碼講解詳細,具有一定的參考價值,有需要的可以了解下2023-10-10spring?boot?mybatis日志輸出到控制臺的方法實踐
在開發(fā)過程中我們往往需要打印出SQL語句,這樣就方便我們監(jiān)控問題,本文主要介紹了spring?boot?mybatis日志輸出到控制臺的方法實踐,具有一定的參考價值,感興趣的可以了解一下2024-05-05