最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JAVA正則表達(dá)式匹配多個(gè)空格的解決方案

 更新時(shí)間:2022年11月11日 11:52:20   作者:予亭  
這篇文章主要介紹了JAVA正則表達(dá)式匹配多個(gè)空格的解決方案,文中提到了()和[]本質(zhì)的區(qū)別,本文給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

需求

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

解決方案

利用正則表達(dá)式來(lái)匹配空格

\\s+

首先利用split("\\s+");方法來(lái)對(duì)字符串切割,盡可能的匹配空格,這里也挺有意思,因?yàn)榭崭駭?shù)目不一樣,可以動(dòng)態(tài)變換匹配的空格數(shù)量,這個(gè)實(shí)現(xiàn)原理可以看看底層原理,挺有意思。
測(cè)試:

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

擴(kuò)充知識(shí)

正則表達(dá)式的() [] {}有不同的意思。
() 是為了提取匹配的字符串。表達(dá)式中有幾個(gè)()就有幾個(gè)相應(yīng)的匹配字符串。(\s*)表示連續(xù)空格的字符串。
[]是定義匹配的字符范圍。比如 [a-zA-Z0-9] 表示相應(yīng)位置的字符要匹配英文字符和數(shù)字。[\s*]表示空格或者*號(hào)。
{}一般用來(lái)表示匹配的長(zhǎng)度,比如 \s{3} 表示匹配三個(gè)空格,\s{1,3}表示匹配一到三個(gè)空格。
(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配數(shù)字(注意后面有 *,可以為空)[0-9]+ 匹配數(shù)字(注意后面有 +,不可以為空){1-9} 寫(xiě)法錯(cuò)誤。
[0-9]{0,9} 表示長(zhǎng)度為 0 到 9 的數(shù)字字符串

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

()內(nèi)的內(nèi)容表示的是一個(gè)子表達(dá)式,()本身不匹配任何東西,也不限制匹配任何東西,只是把括號(hào)內(nèi)的內(nèi)容作為同一個(gè)表達(dá)式來(lái)處理,
例如:(ab){1,3},就表示ab一起連續(xù)出現(xiàn)最少1次,最多3次。如果沒(méi)有括號(hào)的話,ab{1,3},就表示a,后面緊跟的b出現(xiàn)最少1次,最多3次。另外,括號(hào)在匹配模式中也很重要。這個(gè)就不延伸了,LZ有興趣可以自己查查
[]表示匹配的字符在[]中,并且只能出現(xiàn)一次,并且特殊字符寫(xiě)在[]會(huì)被當(dāng)成普通字符來(lái)匹配。例如[(a)],會(huì)匹配(、a、)、這三個(gè)字符。
所以() [] 無(wú)論是作用還是表示的含義,都有天壤之別,沒(méi)什么聯(lián)系

java中,正則表達(dá)式匹配一個(gè)或多個(gè)空格 && 正則表達(dá)式匹配兩個(gè)或多個(gè)空格

001.匹配一個(gè)或者多個(gè)的空格的正則表達(dá)式: \\s+

例:

String[] newStr = str.trim().split("\\s+");

002.匹配二個(gè)或多個(gè)空格的正則表達(dá)式 : \\s{2,}

例:

String str = new String("i am ? a ? good ? ? boy! ? ?");
String replaceAll = str.replaceAll("\\s{2,}", " ").trim();

正則表達(dá)式匹配多個(gè)空格

preg_match_all('/<div class=\"item\">(.*?)<\/p>[\s]*<\/div>/ise',$body,$body_mat);

用[\s]*可匹配多個(gè)空格如</p> </div>

//去掉字符串中的空格
$str1 = "我是中 國(guó) " ;
$s2 = preg_replace("/\s+/",'',$str1);
$len =mb_strlen($s2,"UTF-8") ;

到此這篇關(guān)于JAVA正則表達(dá)式匹配多個(gè)空格的文章就介紹到這了,更多相關(guān)java正則表達(dá)式匹配空格內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java 數(shù)據(jù)類型及類型轉(zhuǎn)換的互相轉(zhuǎn)換實(shí)例代碼

    Java 數(shù)據(jù)類型及類型轉(zhuǎn)換的互相轉(zhuǎn)換實(shí)例代碼

    這篇文章主要介紹了Java 數(shù)據(jù)類型及類型轉(zhuǎn)換的互相轉(zhuǎn)換實(shí)例代碼,需要的朋友可以參考下
    2020-10-10
  • 詳解SpringBoot啟動(dòng)代碼和自動(dòng)裝配源碼分析

    詳解SpringBoot啟動(dòng)代碼和自動(dòng)裝配源碼分析

    這篇文章主要介紹了SpringBoot啟動(dòng)代碼和自動(dòng)裝配源碼分析,使用SpringBoot很簡(jiǎn)單,在主類中添加一個(gè)@SpringBootApplication,以及調(diào)用SpringApplication.run()并傳入主類,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • SpringBoot3使用devtools實(shí)現(xiàn)代碼熱部署的詳細(xì)步驟

    SpringBoot3使用devtools實(shí)現(xiàn)代碼熱部署的詳細(xì)步驟

    Spring Boot DevTools是一組用于提高開(kāi)發(fā)人員生產(chǎn)力,并加速Spring Boot應(yīng)用程序開(kāi)發(fā)的工具,它提供了一些功能,可以幫助開(kāi)發(fā)人員更快速地構(gòu)建應(yīng)用程序,并減少常見(jiàn)的開(kāi)發(fā)問(wèn)題,本文給大家介紹了SpringBoot3使用devtools實(shí)現(xiàn)代碼熱部署的詳細(xì)步驟,需要的朋友可以參考下
    2024-01-01
  • SpringCloud Ribbon負(fù)載均衡工具使用

    SpringCloud Ribbon負(fù)載均衡工具使用

    Ribbon是Netflix的組件之一,負(fù)責(zé)注冊(cè)中心的負(fù)載均衡,有助于控制HTTP和TCP客戶端行為。Spring?Cloud?Netflix?Ribbon一般配合Ribbon進(jìn)行使用,利用在Eureka中讀取的服務(wù)信息,在調(diào)用服務(wù)節(jié)點(diǎn)時(shí)合理進(jìn)行負(fù)載
    2023-02-02
  • Java中List.contains(Object?object)方法使用

    Java中List.contains(Object?object)方法使用

    本文主要介紹了Java中List.contains(Object?object)方法,使用List.contains(Object?object)方法判斷ArrayList是否包含一個(gè)元素對(duì)象,感興趣的可以了解一下
    2022-04-04
  • Java?導(dǎo)出?CSV?文件操作詳情

    Java?導(dǎo)出?CSV?文件操作詳情

    這篇文章主要介紹了Java導(dǎo)出CSV文件操作詳情,文章通過(guò)導(dǎo)入坐標(biāo)展開(kāi)詳細(xì)內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • Java C++實(shí)現(xiàn)相同MD5加密算法的方式

    Java C++實(shí)現(xiàn)相同MD5加密算法的方式

    這篇文章主要介紹了Java與C++實(shí)現(xiàn)相同MD5加密算法的方法,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • Mybatis Update操作返回值問(wèn)題

    Mybatis Update操作返回值問(wèn)題

    在獲取update操作的返回值時(shí)遇到了一個(gè)問(wèn)題,似乎 Mybatis 進(jìn)行 update 操作得到的 int 返回值并不是影響的行數(shù),下面通過(guò)本文給大家分享Mybatis Update操作返回值問(wèn)題,需要的朋友參考下吧
    2017-09-09
  • Springboot集成JUnit5優(yōu)雅進(jìn)行單元測(cè)試的示例

    Springboot集成JUnit5優(yōu)雅進(jìn)行單元測(cè)試的示例

    這篇文章主要介紹了Springboot集成JUnit5優(yōu)雅進(jìn)行單元測(cè)試的示例,幫助大家更好的理解和使用springboot框架,感興趣的朋友可以了解下
    2020-10-10
  • Java類的初始化實(shí)踐分析

    Java類的初始化實(shí)踐分析

    這篇文章主要介紹了Java類的初始化,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了java類初始化的常見(jiàn)情況、操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2019-07-07

最新評(píng)論

宜兰县| 乐东| 南宫市| 贵港市| 通辽市| 舞钢市| 五台县| 丰县| 名山县| 和田市| 平湖市| 威信县| 屏东市| 牡丹江市| 云梦县| 泾阳县| 宁河县| 法库县| 桃园县| 泸定县| 于田县| 大冶市| 齐齐哈尔市| 成武县| 光泽县| 临泽县| 桑植县| 宣武区| 遵义市| 象山县| 民勤县| 瑞昌市| 象州县| 呼玛县| 丰都县| 浦县| 富锦市| 宁远县| 疏勒县| 富锦市| 开鲁县|