国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java Matcher匹配頭尾截取替換字符串的案例

瀏覽:7日期:2022-08-20 08:45:49

在java 編程中,我們常常有這樣的需求:需要將一段字符串內的特定字符串,按照一定規則查找出來或替換,比如匹配文本開頭規則和結束規則。

以下就是Matcher的使用:

import java.util.ArrayList;import java.util.List;import java.util.regex.Matcher;import java.util.regex.Pattern; /** * @Author changle * @Time 17/10/12. * @Desc 匹配頭尾截取替換字符串 * 待替換內容: * url: jdbc:mysql://${cot.identity.db.ip}:3306/${cot.identity.db.dbname}?useUnicode=true&characterEncoding=UTF8 * 替換后: * url: jdbc:mysql://{{cot.identity.db.ip}}:3306/{{cot.identity.db.dbname}}?useUnicode=true&characterEncoding=UTF8 */public class CommonTest { public static void main(String[] args) { String str = 'url: jdbc:mysql://${cot.identity.db.ip}:3306/${cot.identity.db.dbname}?useUnicode=true&characterEncoding=UTF8'; if (str.contains('${cot.')) { Pattern leftpattern = Pattern.compile('${'); Matcher leftmatcher = leftpattern.matcher(str); Pattern rightpattern = Pattern.compile('}'); Matcher rightmatcher = rightpattern.matcher(str); int begin = 0; List<String> foundKeys = new ArrayList<>(); while (leftmatcher.find(begin)) {rightmatcher.find(leftmatcher.start());String configKey = str.substring(leftmatcher.start(), rightmatcher.end());System.out.println(configKey.replace('${', '{{'));foundKeys.add(configKey);begin = rightmatcher.end(); } System.out.println('原內容:'+str); for (String foundkey : foundKeys){str = str.replace(foundkey, foundkey.replace('${cot.','{{cot.').replace('}', '}}').replace('-','_')); } System.out.println('替換后:'+str); } }}

補充知識:JAVA正則表達式 Pattern和Matcher,用正則替換對應的內容

需求:

過濾樣式,比如:

<p><span style='font-size: larger'>鉛筆機一個</span></p>

過濾后結果= 鉛筆機一個

public static void main(String[] args) { String skuName='<p><span style=’font-size: larger’>鉛筆機一個</span></p>'; // 生成一個Pattern,同時編譯一個正則表達式 Pattern pattern = Pattern.compile('<(.[^>]*)>'); //匹配字符串 Matcher matcher = pattern.matcher(skuName); //把符合正則的數據替換成'' skuName=matcher.replaceAll(''); System.out.println('替換以后結果=====》'+skuName);}

輸出結果:

替換以后結果=====》鉛筆機一個

說明:

1.Pattern類用于創建一個正則表達式,也可以說創建一個匹配模式,它的構造方法是私有的,不可以直接創建,但可以通過Pattern.complie(String regex)簡單工廠方法創建一個正則表達式。

2.Pattern.matcher(String regex,CharSequence input)是一個靜態方法,用于快速匹配字符串,該方法適合用于只匹配一次,且匹配全部字符串。

以上這篇java Matcher匹配頭尾截取替換字符串的案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 国产欧美在线观看 | 99精品国产高清一区二区三区香蕉 | www中文字幕 | 国产91精品一区二区麻豆亚洲 | 亚洲精品亚洲人成在线麻豆 | 日韩精品999| 狼人久久尹人香蕉尹人 | 欧美做爰免费大片在线观看 | 成人毛片免费看 | 91免费高清视频 | 不卡午夜 | 欧美性f | 中日韩一级片 | 国产精品夜色视频一级区 | 看一级毛片一区二区三区免费 | 成人免费在线网站 | 欧美国产高清 | 日本加勒比高清一本大道 | 亚洲一区二区三区久久久久 | 99久热在线精品视频播 | 日韩区在线观看 | 国内主播福利视频在线观看 | 精品自拍视频 | 欧洲免费无线码二区5 | 韩国福利影视一区二区三区 | 日韩国产欧美在线观看 | 国产成人高清在线观看播放 | 午夜爽爽爽男女免费观看hd | 成人中文字幕在线观看 | 亚洲欧洲一区二区三区在线 | 日本免费视| 国产成人精品福利网站在线 | 可以看毛片的网站 | 精品国产日韩亚洲一区二区 | 日本一区二区三区四区不卡 | 国语一级毛片 | 国产三级在线观看a | 99热国产免费 | 国产com | 久草在线免费色站 | 手机看成人免费大片 |