日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
IDEA如何使用正則表達式批量替換字符串

本篇文章為大家講解一下IDEA如何使用正則表達式批量替換字符串,有需要的小伙伴可以參考一下。

img

由于一開始的粗放擴張,公司項目代碼里,遺留有很多類似魔法數(shù)的寫死的id,導(dǎo)致現(xiàn)在維護困難。于是交給我任務(wù),將這些id替換成靜態(tài)變量。

這些id有十多種,分布在十個文件中,總共六十多處,要手動去查找替換幾乎是不可能的。

Idea中,菜單欄Edit->find->replace in path可以打開全文件查找功能,可以對項目的所有文件中的內(nèi)容進行查找替換。

現(xiàn)在我們有這樣的代碼,其中的abcd是寫死的id:

String id="abcd".equals(str);

要替換成:

String id=ConstantService.getBy("abcd").equals(str);

如果只用普通的匹配,我會想到查找”String id=””,替換成”String id=ConstantService.getBy(“”。

然而在項目中”String id=””這樣格式的代碼是非常多的,普通的匹配很可能誤傷到其他代碼。

因此我使用正則匹配。點擊右邊的”.*”圖標打開正則匹配模式。

簡單介紹Idea使用正則表達式批量替換字符串的方法簡單介紹Idea使用正則表達式批量替換字符串的方法

需要替換的代碼符合這樣的匹配模式:

String id=\"(\w+)\".equals\(str\);

可以替換成:

String id=ConstantService.getBy("$1").equals(str);

匹配模式中,寫死的id可以用”(\w+)”表示。最外側(cè)是轉(zhuǎn)義的引號。括號代表一個匹配組,其中的\w匹配字符,+號表示字符出現(xiàn)1或多次。這樣的模式符合項目中寫死id。

替換串中$1代表匹配串中的第一個匹配組。因此,我們不用一次次的指定每個id,替換串自動將匹配的id替換到結(jié)果中。

這樣,這項本來令人難以想象的復(fù)雜工作就輕松解決了。到此這篇關(guān)于Idea使用正則表達式批量替換字符串的文章就介紹到這了。


網(wǎng)站名稱:IDEA如何使用正則表達式批量替換字符串
文章出自:http://m.5511xx.com/article/dpcpsje.html