久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      詳解Java中的scala正則表達(dá)式

      Scala 通過(guò) scala.util.matching 包中的 Regex 類來(lái)支持正則表達(dá)式。

      eg:使用正則表達(dá)式查找單詞 Scala

      詳解Java中的scala正則表達(dá)式

      實(shí)例中使用 String 類的 r() 方法構(gòu)造了一個(gè)Regex對(duì)象。(也可直接new一個(gè)Regex對(duì)象實(shí)例)然后使用 findFirstIn 方法找到首個(gè)匹配項(xiàng)。如果需要查看所有的匹配項(xiàng)可以使用 findAllIn 方法。

      可以使用 mkString( ) 方法來(lái)連接正則表達(dá)式匹配結(jié)果的字符串,并可以使用管道(|)來(lái)設(shè)置不同的模式

       詳解Java中的scala正則表達(dá)式

      如果需要將匹配的文本替換為指定的關(guān)鍵詞,可以使用 replaceFirstIn( ) 方法來(lái)替換第一個(gè)匹配項(xiàng),使用 replaceAllIn( ) 方法替換所有匹配項(xiàng)

      詳解Java中的scala正則表達(dá)式

      正則表達(dá)式

      Scala 的正則表達(dá)式繼承了 Java 的語(yǔ)法規(guī)則,Java 則大部分使用了 Perl 語(yǔ)言的規(guī)則。

      下表給出了常用的一些正則表達(dá)式規(guī)則:

       Java 的語(yǔ)法規(guī)則,Java 則大部分使用了 Perl 語(yǔ)言的規(guī)則。

      下表給出了常用的一些正則表達(dá)式規(guī)則:

      表達(dá)式 匹配規(guī)則

      ^ 匹配輸入字符串開始的位置。
      $ 匹配輸入字符串結(jié)尾的位置。
      . 匹配除”rn”之外的任何單個(gè)字符。
      […] 字符集。匹配包含的任一字符。例如,”[abc]”匹配”plain”中的”a”。
      [^…] 反向字符集。匹配未包含的任何字符。例如,”[^abc]”匹配”plain”中”p”,”l”,”i”,”n”。
      \A 匹配輸入字符串開始的位置(無(wú)多行支持)
      \z 字符串結(jié)尾(類似$,但不受處理多行選項(xiàng)的影響)
      \Z 字符串結(jié)尾或行尾(不受處理多行選項(xiàng)的影響)
      re* 重復(fù)零次或更多次
      re+ 重復(fù)一次或更多次
      re? 重復(fù)零次或一次
      re{ n} 重復(fù)n次
      re{ n,}
      re{ n, m} 重復(fù)n到m次
      a|b 匹配 a 或者 b
      (re) 匹配 re,并捕獲文本到自動(dòng)命名的組里
      (?: re) 匹配 re,不捕獲匹配的文本,也不給此分組分配組號(hào)
      (?> re) 貪婪子表達(dá)式
      \w 匹配字母或數(shù)字或下劃線或漢字
      \W 匹配任意不是字母,數(shù)字,下劃線,漢字的字符
      \s 匹配任意的空白符,相等于 [tnrf]
      \S 匹配任意不是空白符的字符
      \d 匹配數(shù)字,類似 [0-9]
      \D 匹配任意非數(shù)字的字符
      \G 當(dāng)前搜索的開頭
      \n 換行符
      \b 通常是單詞分界位置,但如果在字符類里使用代表退格
      \B 匹配不是單詞開頭或結(jié)束的位置
      \t 制表符
      \Q 開始引號(hào):Q(a+b)*3E 可匹配文本 “(a+b)*3″。
      \E 結(jié)束引號(hào):Q(a+b)*3E 可匹配文本 “(a+b)*3″。

      正則表達(dá)式實(shí)例

       實(shí)例 描述
      . 匹配除”rn”之外的任何單個(gè)字符。
      [Rr]uby 匹配 “Ruby” 或 “ruby”
      rub[ye] 匹配 “ruby” 或 “rube”
      [aeiou] 匹配小寫字母 :aeiou
      [0-9] 匹配任何數(shù)字,類似 [0123456789]
      [a-z] 匹配任何 ASCII 小寫字母
      [A-Z] 匹配任何 ASCII 大寫字母
      [a-zA-Z0-9] 匹配數(shù)字,大小寫字母
      [^aeiou] 匹配除了 aeiou 其他字符
      [^0-9] 匹配除了數(shù)字的其他字符
      \d 匹配數(shù)字,類似: [0-9]
      \D 匹配非數(shù)字,類似: [^0-9]
      \s 匹配空格,類似: [ trnf]
      \S 匹配非空格,類似: [^ trnf]
      \w 匹配字母,數(shù)字,下劃線,類似: [A-Za-z0-9_]
      \W 匹配非字母,數(shù)字,下劃線,類似: [^A-Za-z0-9_]
      ruby? 匹配 “rub” 或 “ruby”: y 是可選的
      ruby* 匹配 “rub” 加上 0 個(gè)或多個(gè)的 y。
      ruby+ 匹配 “rub” 加上 1 個(gè)或多個(gè)的 y。
      \d{3,5} 匹配 3 個(gè)、4 個(gè)或 5 個(gè)數(shù)字。
      \D\d)+/ 分組: + 重復(fù) Dd 對(duì)
      ([Rr]uby(, )?)+ 匹配 “Ruby”、”Ruby, ruby, ruby”,等等
      ———————

      參照:http://www.runoob.com/scala/scala-regular-expressions.html

      注意:上表中的每個(gè)字符使用了兩個(gè)反斜線。這是因?yàn)?em>在 Java 和 Scala 中字符串中的反斜線是轉(zhuǎn)義字符。所以若要輸出 ..,需要在字符串中寫成 .\. 來(lái)獲取一個(gè)反斜線。

      eg:

      詳解Java中的scala正則表達(dá)式

      總結(jié)

      以上所述是小編給大家介紹的Java中的scala正則表達(dá)式,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)