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

java 使用正則表達式去除前后空格

 更新時間:2021年04月16日 08:50:08   作者:今天你拼命了嗎?  
這篇文章主要介紹了java 使用正則表達式去除前后空格,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

問題描述:

java去除字符串前后空白,身為小伙子的我搞了大半天,其實蠻簡單的。

解決方案:

方式一:

trim() trim()是 String里的常用的方法,作用:返回字符串的副本,忽略前導空白和尾部空白*

在這里插入圖片描述

輸出結(jié)果:

在這里插入圖片描述

方式二:正則表達式:

replaceAll(String regex,String replacement):也是String類的常用方法,

是一個形參為可以填正則表達式,第二形參為替換的內(nèi)容

這里需要的正則式:

(1) \s 表示空格,

(2) ^表示開頭

(3) $表示結(jié)尾

(4) +表示數(shù)量

在這里插入圖片描述

輸出結(jié)果:

在這里插入圖片描述

完結(jié)~

補充:JAVA正則表達式匹配多個空格

需求

針對tab鍵帶來的多個空格問題,有時候我們針對帶空格的一行數(shù)據(jù)要進行切割,如果有多個空格就會出現(xiàn)就會切割空格出現(xiàn),我們想把空格都去掉,所以需要用到某些方法。

解決方案

利用正則表達式來匹配空格

\\s+

首先利用split("\\s+");方法來對字符串切割,盡可能的匹配空格,這里也挺有意思,因為空格數(shù)目不一樣,可以動態(tài)變換匹配的空格數(shù)量,這個實現(xiàn)原理可以看看底層原理,挺有意思。

測試:

  String string="a   b  a  a ";
  for(String a:string.split("\\s+")){
   System.out.println(a);
  }

擴充知識

正則表達式的() [] {}有不同的意思。

() 是為了提取匹配的字符串。表達式中有幾個()就有幾個相應的匹配字符串。(\s*)表示連續(xù)空格的字符串。

[]是定義匹配的字符范圍。比如 [a-zA-Z0-9] 表示相應位置的字符要匹配英文字符和數(shù)字。[\s*]表示空格或者*號。

{}一般用來表示匹配的長度,比如 \s{3} 表示匹配三個空格,\s{1,3}表示匹配一到三個空格。

(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配數(shù)字(注意后面有 *,可以為空)[0-9]+ 匹配數(shù)字(注意后面有 +,不可以為空){1-9} 寫法錯誤。

[0-9]{0,9} 表示長度為 0 到 9 的數(shù)字字符串

()和[]有本質(zhì)的區(qū)別

()內(nèi)的內(nèi)容表示的是一個子表達式,()本身不匹配任何東西,也不限制匹配任何東西,只是把括號內(nèi)的內(nèi)容作為同一個表達式來處理,

例如:(ab){1,3},就表示ab一起連續(xù)出現(xiàn)最少1次,最多3次。如果沒有括號的話,ab{1,3},就表示a,后面緊跟的b出現(xiàn)最少1次,最多3次。另外,括號在匹配模式中也很重要。這個就不延伸了,LZ有興趣可以自己查查

[]表示匹配的字符在[]中,并且只能出現(xiàn)一次,并且特殊字符寫在[]會被當成普通字符來匹配。例如[(a)],會匹配(、a、)、這三個字符。

所以() [] 無論是作用還是表示的含義,都有天壤之別,沒什么聯(lián)系

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • Java線程中的ThreadLocal原理及源碼解析

    Java線程中的ThreadLocal原理及源碼解析

    這篇文章主要介紹了Java線程中的ThreadLocal原理及源碼解析,ThreadLocal 的作用是為每個線程保存一份局部變量的引用,實現(xiàn)多線程之間的數(shù)據(jù)隔離,從而避免了線程不安全情況的發(fā)生,需要的朋友可以參考下
    2023-12-12
  • Java跨平臺原理與虛擬機相關(guān)簡介

    Java跨平臺原理與虛擬機相關(guān)簡介

    這篇文章主要介紹了Java跨平臺原理與虛擬機的相關(guān)資料,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下
    2021-03-03
  • 淺談java+內(nèi)存分配及變量存儲位置的區(qū)別

    淺談java+內(nèi)存分配及變量存儲位置的區(qū)別

    下面小編就為大家?guī)硪黄獪\談java+內(nèi)存分配及變量存儲位置的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08
  • 一次排查@CacheEvict注解失效的經(jīng)歷及解決

    一次排查@CacheEvict注解失效的經(jīng)歷及解決

    這篇文章主要介紹了一次排查@CacheEvict注解失效的經(jīng)歷及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java 在PDF中添加騎縫章示例解析

    Java 在PDF中添加騎縫章示例解析

    這篇文章主要介紹了Java 在PDF中添加騎縫章示例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • 詳解java中spring里的三大攔截器

    詳解java中spring里的三大攔截器

    在本篇文章里我們給大家詳細講述了java中spring里的三大攔截器相關(guān)知識點以及用法代碼,需要的朋友們學習下。
    2018-10-10
  • 新手了解java 泛型基礎(chǔ)知識

    新手了解java 泛型基礎(chǔ)知識

    這篇文章主要給大家介紹了關(guān)于Java中泛型使用的簡單方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2021-07-07
  • 解決mybatisplus MetaObjectHandler 失效的問題

    解決mybatisplus MetaObjectHandler 失效的問題

    本文主要介紹了解決mybatisplus MetaObjectHandler 失效的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • MyBatis批量插入幾千條數(shù)據(jù)為何慎用foreach

    MyBatis批量插入幾千條數(shù)據(jù)為何慎用foreach

    這篇文章主要介紹了MyBatis批量插入幾千條數(shù)據(jù)為何慎用foreach問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Spring MVC請求參數(shù)與響應結(jié)果全局加密和解密詳解

    Spring MVC請求參數(shù)與響應結(jié)果全局加密和解密詳解

    這篇文章主要給大家介紹了關(guān)于Spring MVC請求參數(shù)與響應結(jié)果全局加密和解密的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-08-08

最新評論