從一個(gè)字符串中提取滿足指定正則表達(dá)式的字符串坦报,如下代碼:
public static void main(String[] args) {
? ? ? ? // 內(nèi)容
? ? ? ? String value = "fileNameCode-->_AD2467524284sd234.json";
? ? ? ? // 匹配規(guī)則
? ? ? ? String reg = "_(.*?)\\.";
? ? ? ? Pattern pattern = Pattern.compile(reg);
? ? ? ? // 內(nèi)容 與 匹配規(guī)則 的測(cè)試
? ? ? ? Matcher matcher = pattern.matcher(value);
? ? ? ? if( matcher.find() ){
? ? ? ? ? ? // 包含前后的兩個(gè)字符
? ? ? ? ? ? System.out.println(matcher.group());
? ? ? ? ? ? // 不包含前后的兩個(gè)字符
? ? ? ? ? ? System.out.println( matcher.group(1) );
? ? ? ? }else{
? ? ? ? ? ? System.out.println(" 沒(méi)有匹配到內(nèi)容....");
? ? ? ? }
? ? }
注意:這個(gè) . 需要:\\. 這樣衰腌。
() --> 標(biāo)記 一個(gè)子表達(dá)式 開始 和 結(jié)束 的位置。
. --> 匹配除換行符 \n 之外的任何單字符谦趣。
* --> 匹配前面的子表達(dá)式零次或者多次。
? --> 匹配前端的子表達(dá)式零次或者一次。