欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中檢查字符串是否以特定字符結(jié)尾

 更新時(shí)間:2022年06月06日 09:44:09   作者:? HooW?  ?  
這篇文章主要介紹了Java中檢查字符串是否以特定字符結(jié)尾,文章圍繞主題展開(kāi)字符串匹配問(wèn)題,具有一定的參考價(jià)值需要的小伙伴可以參考一下

前言:

在日常開(kāi)發(fā)中經(jīng)常會(huì)遇到字符串匹配問(wèn)題,我們就來(lái)學(xué)習(xí)使用Java中的一些方便快捷的方法來(lái)解決這個(gè)問(wèn)題吧

使用String類

Java自帶的字符串類提供了多種方法來(lái)驗(yàn)證一個(gè)給定的字符串是否以特定的字符串結(jié)束

endsWith()方法

endsWith()方法就是為了解決這個(gè)問(wèn)題而引入的。它提供了一個(gè)直接的方法來(lái)檢查一個(gè)String對(duì)象是否以另一個(gè)字符串結(jié)尾

    public static boolean isEndWith(String text, String suffix) {
        if (text == null || suffix == null) {
            return false;
        }
        return text.endsWith(suffix);
    }

注意:需要確保text和suffix不為空,以避免出現(xiàn)空指針異常NullPointerException

matches()方法

matches()方法也可以用來(lái)解決這個(gè)問(wèn)題,它使用正則檢查一個(gè)字符串是否與一個(gè)給定的正則表達(dá)式相匹配

public static boolean isEndWith(String text, String suffix) {
    if (text == null || suffix == null) {
        return false;
    }
    String regex = ".*" + suffix + "$";
    return text.matches(regex);
}

這里使用了一個(gè)正則表達(dá)式來(lái)匹配我們字符串文本末尾的后綴($)。然后我們把這個(gè)正則表達(dá)式傳給了matches()方法執(zhí)行進(jìn)行匹配

regionMatches()

還可以使用regionMatches()方法來(lái)解決這個(gè)問(wèn)題,regionMatches() 方法用于檢測(cè)兩個(gè)字符串在一個(gè)區(qū)域內(nèi)是否相等。

public static boolean usingStringRegionMatchesMethod(String text, String suffix) {
    if (text == null || suffix == null) {
        return false;
    }
    int toffset = text.length() - suffix.length();
    return text.regionMatches(toffset, suffix, 0, suffix.length());
}

toffset表示text字符串中子區(qū)域的起始偏移量。所以為了檢查text是否以suffix結(jié)束,toffset應(yīng)該等于text的長(zhǎng)度減去suffix的長(zhǎng)度

使用Pattern類

我們還可以使用Pattern類來(lái)編譯一個(gè)正則表達(dá)式,來(lái)檢查text是否以suffix結(jié)束

重新使用上邊使用過(guò)的正則表達(dá)式:

public static boolean usingPatternClass(String text, String suffix) {
    if (text == null || suffix == null) {
        return false;
    }
    Pattern pattern = Pattern.compile(".*" + suffix + "$");
    return pattern.matcher(text).find();
}

Pattern編譯了前面的正則,表示以字符串suffix結(jié)尾,并將其與我們的text相匹配

到此這篇關(guān)于Java中檢查字符串是否以特定字符結(jié)尾的文章就介紹到這了,更多相關(guān)Java特定字符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot打包jar中沒(méi)有主清單屬性問(wèn)題

    springboot打包jar中沒(méi)有主清單屬性問(wèn)題

    這篇文章主要介紹了springboot打包jar中沒(méi)有主清單屬性問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • JVM入門(mén)之JVM內(nèi)存結(jié)構(gòu)內(nèi)容詳解

    JVM入門(mén)之JVM內(nèi)存結(jié)構(gòu)內(nèi)容詳解

    這篇文章主要介紹了JVM入門(mén)之JVM內(nèi)存結(jié)構(gòu)內(nèi)容詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • Spring?Boot在開(kāi)發(fā)過(guò)程中常用IDEA插件

    Spring?Boot在開(kāi)發(fā)過(guò)程中常用IDEA插件

    這篇文章主要為大家介紹了Spring?Boot在開(kāi)發(fā)過(guò)程中常用IDEA插件,幫助大家提高開(kāi)發(fā)工作效率,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • 關(guān)于Java并發(fā)編程中線程間協(xié)作的兩種方式

    關(guān)于Java并發(fā)編程中線程間協(xié)作的兩種方式

    這篇文章主要介紹了關(guān)于Java并發(fā)編程中線程間協(xié)作的兩種方式,當(dāng)隊(duì)列滿時(shí),生產(chǎn)者需要等待隊(duì)列有空間才能繼續(xù)往里面放入商品,而在等待的期間內(nèi),生產(chǎn)者必須釋放對(duì)臨界資源的占用權(quán),這是消費(fèi)者模式,需要的朋友可以參考下
    2023-07-07
  • Java Guava排序器Ordering原理及代碼實(shí)例

    Java Guava排序器Ordering原理及代碼實(shí)例

    這篇文章主要介紹了Java Guava排序器Ordering原理及代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • MyBatis_Generator插件的安裝以及簡(jiǎn)單使用方法(圖解)

    MyBatis_Generator插件的安裝以及簡(jiǎn)單使用方法(圖解)

    下面小編就為大家?guī)?lái)一篇MyBatis_Generator插件的安裝以及簡(jiǎn)單使用方法(圖解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • jdk21環(huán)境配置詳細(xì)步驟記錄

    jdk21環(huán)境配置詳細(xì)步驟記錄

    JDK是整個(gè)Java開(kāi)發(fā)的核心,它包含了Java的運(yùn)行環(huán)境和Java工具,這篇文章主要給大家介紹了關(guān)于jdk21環(huán)境配置的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Nacos-SpringBoot框架啟動(dòng)不加載bootstrap.yml的解決

    Nacos-SpringBoot框架啟動(dòng)不加載bootstrap.yml的解決

    這篇文章主要介紹了Nacos-SpringBoot框架啟動(dòng)不加載bootstrap.yml的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • SpringMvc之HandlerMapping詳解

    SpringMvc之HandlerMapping詳解

    這篇文章主要介紹了SpringMvc之HandlerMapping詳解,Handler可以理解為具體干活的,也就是我們的業(yè)務(wù)處理邏輯,Handler最終是要通過(guò)url 來(lái)訪問(wèn)到,這樣url 與Handler之間就有一個(gè)映射關(guān)系了,需要的朋友可以參考下
    2023-08-08
  • Java?SSM實(shí)現(xiàn)前后端協(xié)議聯(lián)調(diào)詳解下篇

    Java?SSM實(shí)現(xiàn)前后端協(xié)議聯(lián)調(diào)詳解下篇

    首先我們已經(jīng)知道,在現(xiàn)在流行的“前后端完全分離”架構(gòu)中,前后端聯(lián)調(diào)是一個(gè)不可能避免的問(wèn)題,這篇文章主要介紹了Java?SSM實(shí)現(xiàn)前后端協(xié)議聯(lián)調(diào)過(guò)程
    2022-08-08

最新評(píng)論