中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在Go中使用正則表達式的示例

發布時間:2020-12-04 11:51:04 來源:億速云 閱讀:189 作者:小新 欄目:編程語言

這篇文章主要介紹在Go中使用正則表達式的示例,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

一、演示案例

在這個案例中聲明了常量text

然后使用了regexp這個包的regexp.Compile這個方法。

這種方式是不確定用戶輸入的值是否符合匹配規則。

當然也可以看到結果是返回了我們需要的數據。在Go中使用正則表達式的示例

但是在一般情況下,如果確定了用戶輸入的內容是正確的是完全符合的就可以使用下方案例。

在這個案例中可以看到regexp.MustCompile使用了這個方法,并且返回的值也是一樣的。

這個方法沒有返回錯誤,但是在自己的內部方法進行了異常處理。

根據注釋可以得知使用這個方法給的參數表達式是不必須可以解析的,如果不能解析則就會拋出異常。

二、正則匹配

接下來我們使用正則進行匹配, 也就是在上圖方法中進行正則表達式的匹配。

案例跟上圖使用的一致都是用來匹配郵箱。

那么接下來先寫第一版本。

可以看到返回結果就是我們想要的。

關于正則表達式的寫法這部分內容在這里就說明了, 本文主要是針對go如何使用正則表達式。

此時就會反映出第一個問題,那就是FindString這個方法只能匹配一個值。

那如何匹配多個值呢!請看下方案例

三、匹配多個值

可以看到返回結果是將所有可以匹配的郵箱都給匹配了出來。

匹配多個值需要使用FindAllString這個方法。

第一個參數為匹配的字符,第二個參數是尋找多少個,-1是全找

在go中給提供了一種非常好的方式可以直接將郵箱名、郵箱域名、和郵箱后綴給提取出來,那么應該怎么做呢!

四、正則表達式提取內容

在這里就不能繼續使用上述案例的方法了,需要使用FindAllStringSubmatch這個方法

在這個方法中可以得知返回的是一個二維的字符串,從上圖的返回結果也可以得知返回的就是一個二維的字符串。

既然返回的是二維的字符串切片,那么我們就可以進行循環來獲取每一個提取出來的內容。

可以看到返回了四個匹配,第一個就是完整的,后邊的三個都是我們獲取出來的內容。

以上是“在Go中使用正則表達式的示例”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

襄樊市| 资源县| 合作市| 阿巴嘎旗| 牡丹江市| 永济市| 漳浦县| 新晃| 邵阳市| 富川| 天长市| 盱眙县| 东港市| 沂水县| 绥德县| 长沙市| 陆良县| 呼图壁县| 丰顺县| 东乌| 二手房| 阿拉善右旗| 精河县| 米泉市| 松桃| 观塘区| 堆龙德庆县| 宝应县| 辉南县| 昆山市| 融水| 陇川县| 清丰县| 沂水县| 静海县| 揭东县| 齐齐哈尔市| 庐江县| 河东区| 桃江县| 绥棱县|