溫馨提示×

溫馨提示×

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

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

scala的正則表達式模式怎么實現(xiàn)

發(fā)布時間:2021-12-08 14:58:34 來源:億速云 閱讀:100 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要介紹“scala的正則表達式模式怎么實現(xiàn)”,在日常操作中,相信很多人在scala的正則表達式模式怎么實現(xiàn)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”scala的正則表達式模式怎么實現(xiàn)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!


正則表達式是用來找出數(shù)據(jù)中的指定模式(或缺少該模式)的字符串。  .r  方法可使任意字符串變成一個正則表達式。
   
import scala.util.matching.Regex              val numberPattern: Regex = "[0-9]".r              numberPattern.findFirstMatchIn("awesomepassword") match {                case Some(_) => println("Password OK")                case None => println("Password must contain a number")              }    
上例中,  numberPattern的類型是正則表達式類  Regex,其作用是確保密碼中包含一個數(shù)字。
你還可以使用括號來同時匹配多組正則表達式。
   import scala.util.matching.Regex
 
    
    val keyValPattern: Regex = "([0-9a-zA-Z-#() ]+): ([0-9a-zA-Z-#() ]+)".r
      
    
    
    val input: String =
      
    
      """background-color: #A03300;
      
    
        |background-image: url(img/header100.png);
      
    
        |background-position: top center;
      
    
        |background-repeat: repeat-x;
      
    
        |background-size: 2160px 108px;
      
    
        |margin: 0;
      
    
        |height: 108px;
      
    
        |width: 100%;""".stripMargin
      
    
    for (patternMatch <- keyValPattern.findAllMatchIn(input))
      
    
      println(s"key: ${patternMatch.group(1)} value: ${patternMatch.group(2)}")
上例解析出了一個字符串中的多個鍵和值,其中的每個匹配又有一組子匹配,結(jié)果如下:  
   
   key: background-color value: 
      
    
    key: background-image value: url(img
      
    
    key: background-position value: top center
      
    
    key: background-repeat value: repeat-x
      
    
    key: background-size value: 2160px 108px
      
    
    key: margin value: 0
      
    
    key: height value: 108px
      
    
    key: width value: 100

到此,關(guān)于“scala的正則表達式模式怎么實現(xiàn)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI