真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

VSCode中正則表達(dá)式的示例-創(chuàng)新互聯(lián)

小編給大家分享一下VSCode中正則表達(dá)式的示例,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比鶴壁網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式鶴壁網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鶴壁地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。

文本編輯器設(shè)置

雖然現(xiàn)在幾乎所有的文本編輯器都支持正則表達(dá)式,但我在本教程中用的是 Visual Studio Code,不過你可以使用任何你喜歡的編輯器。另請(qǐng)注意,你通常需要在搜索輸入框附近的某處打開 RegEx 開關(guān)。以下是在 VSCode 中執(zhí)行此操作的方法:

VSCode中正則表達(dá)式的示例

你需要通過選中此選項(xiàng)啟用RegEx

1).? — ?匹配任何字符

讓我們開始吧。點(diǎn)符號(hào). 用來匹配任何字符:

b.t

VSCode中正則表達(dá)式的示例

上面的正則匹配"bot",`"bat"和任何以b開頭、t結(jié)尾的三個(gè)字符的單詞。但是如果你想搜索點(diǎn)符號(hào),則需要用\ 來對(duì)它進(jìn)行轉(zhuǎn)義,所以下面這個(gè)正則只匹配確切的文本"b.t"

b\.t

VSCode中正則表達(dá)式的示例

2).* ?—? 匹配任何東西

這里. 表示“任何字符”* 表示“此符號(hào)重復(fù)前面那個(gè)內(nèi)容任何次數(shù)?!?/em>  把它們放在一起(.*)表示“任何符號(hào)重復(fù)任意次數(shù)?!?/em> 例如,你可以用它來查找以某些文本開頭或結(jié)尾的匹配項(xiàng)。假設(shè)我們有一個(gè)這樣的 javascript 方法:

loadScript(scriptName: string, pathToFile: string)

我們想找到這個(gè)方法的所有調(diào)用,其中pathToFile 指向文件夾“l(fā)ua” 中的任何文件。可以使用以下正則表達(dá)式:

loadScript.*lua

這意味著,“匹配所有以"loadScript" 開始同時(shí)以"lua"結(jié)束的字符串。”

VSCode中正則表達(dá)式的示例

3)? ?— ?非貪婪的匹配

.* 之后的? 符號(hào)和其他一些匹配規(guī)則意味著“盡可能少的匹配”。 在上一張圖中,每次匹配都會(huì)得到兩次"lua"字符串,直到第二個(gè)"lua" 所有東西才能全部匹配完畢。如果你想匹配第一次出現(xiàn)的"lua",可以使用以下正則:

loadScript.*?lua

這意味著,“匹配所有以"loadScript"開頭,后面為任意字符,直到第一次出現(xiàn)"lua"

VSCode中正則表達(dá)式的示例

loadScript.*?lua:匹配以 loadScript 開頭的所有內(nèi)容,直到第一次出現(xiàn)"lua"

4) `( ) ###  ?— 捕獲組和反向引用

好的,現(xiàn)在我們可以匹配一些文字了。但是如果想要修改我們發(fā)現(xiàn)的部分文本呢?這時(shí)候就要用到捕獲組。

假設(shè)我們修改了loadScript 方法,現(xiàn)在需要在它原來的兩個(gè)參數(shù)之間插入另外一個(gè)參數(shù)。讓我們把這個(gè)新參數(shù)命名為id,這時(shí)新的函數(shù)原型應(yīng)如下所示:loadScript(scriptName,id,pathToFile)。我們?cè)谶@里不能用文本編輯器的常規(guī)替換功能,不過正則表達(dá)式能夠幫助我們。

VSCode中正則表達(dá)式的示例

通過上圖你可以看到運(yùn)行以下正則表達(dá)式的結(jié)果:

loadScript\(.*?,.*?\)

這意味著:“匹配以"loadScript(" 開頭的, 后面跟任意內(nèi)容,直到遇到第一個(gè), ,然后是任意內(nèi)容,直到第一個(gè))

對(duì)你來說,可能看起來比較奇怪的是\ 符號(hào)。它們用于對(duì)括號(hào)進(jìn)行轉(zhuǎn)義。

因?yàn)榉?hào)() 是正則表達(dá)式用來捕獲匹配文本部分的特殊字符,但我們需要匹配實(shí)際的括號(hào)字符,所以需要對(duì)它們進(jìn)行轉(zhuǎn)義。

在前面的表達(dá)式中,我們使用.*?符號(hào)定義了方法調(diào)用的兩個(gè)參數(shù)。要使每個(gè)參數(shù)作為單獨(dú)的捕獲組,需要在它們的前后分別添加()符號(hào):

loadScript\((.*?),(.*?)\)

如果你運(yùn)行這段正則,你將看到?jīng)]有任何變化。這是因?yàn)樗ヅ涞氖窍嗤奈谋尽5F(xiàn)在我們可以將第一個(gè)參數(shù)稱為\$1,將第二個(gè)參數(shù)稱為\$2。這稱為反向引用,它將幫助我們做自己想要的事情:在兩個(gè)參數(shù)中間添加另一個(gè)參數(shù):

搜索輸入:

loadScript\((.*?),(.*?)\)

這與之前的正則相同,但分別將參數(shù)映射到倒了捕獲組1和2。

替換輸入:

loadScript($1,id,$2)

這意味著“用文本"loadScript("、捕獲組1、"id"、捕獲組2和) 替換每個(gè)匹配的文本 ”。請(qǐng)注意,你不需要在替換輸入中轉(zhuǎn)義括號(hào)。

VSCode中正則表達(dá)式的示例

5)[ ] ?—? 字符類

你可以在 [] 符號(hào)內(nèi)來列出要在特定位置匹配的字符。例如,[0-9]匹配從0到9的所有數(shù)字。你還可以明確列出所有數(shù)字:[0123456789] —— 與前面的含義相同。你也可以使用帶字母的破折號(hào),[a-z] 將匹配所有小寫拉丁字符,[A-Z] 將匹配所有大寫拉丁字符,[a-zA-Z] 將會(huì)匹配兩者。

你也可以在字符類之后使用*,就像在. 之后一樣,在這種情況下意味著:“匹配此類中任意數(shù)量的字符”

VSCode中正則表達(dá)式的示例

看完了這篇文章,相信你對(duì)“VSCode中正則表達(dá)式的示例”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


本文標(biāo)題:VSCode中正則表達(dá)式的示例-創(chuàng)新互聯(lián)
文章出自:http://weahome.cn/article/picdj.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部