欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

scala正則表達式怎么在Java中使用-創(chuàng)新互聯(lián)

scala正則表達式怎么在Java中使用?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、蘇家屯ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的蘇家屯網(wǎng)站制作公司

Scala 通過 scala.util.matching 包中的Regex 類來支持正則表達式。

eg:使用正則表達式查找單詞Scala

scala正則表達式怎么在Java中使用

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

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

 scala正則表達式怎么在Java中使用

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

scala正則表達式怎么在Java中使用

正則表達式

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

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

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

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

表達式 匹配規(guī)則


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


正則表達式實例


 實例 描述
. 匹配除"\r\n"之外的任何單個字符。
[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 匹配空格,類似: [ \t\r\n\f]
\\S 匹配非空格,類似: [^ \t\r\n\f]
\\w 匹配字母,數(shù)字,下劃線,類似: [A-Za-z0-9_]
\\W 匹配非字母,數(shù)字,下劃線,類似: [^A-Za-z0-9_]
ruby? 匹配 "rub" 或 "ruby": y 是可選的
ruby* 匹配 "rub" 加上 0 個或多個的 y。
ruby+ 匹配 "rub" 加上 1 個或多個的 y。
\\d{3} 剛好匹配 3 個數(shù)字。
\\d{3,} 匹配 3 個或多個數(shù)字。
\\d{3,5} 匹配 3 個、4 個或 5 個數(shù)字。
\\D\\d+ 無分組: + 重復(fù) \d
(\\D\\d)+/ 分組: + 重復(fù) \D\d 對
([Rr]uby(, )?)+ 匹配 "Ruby"、"Ruby, ruby, ruby",等等
---------------------


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

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

eg:

scala正則表達式怎么在Java中使用

看完上述內(nèi)容,你們掌握scala正則表達式怎么在Java中使用的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

文章名稱:scala正則表達式怎么在Java中使用-創(chuàng)新互聯(lián)
URL分享:http://www.chinadenli.net/article22/disicc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站網(wǎng)站內(nèi)鏈全網(wǎng)營銷推廣微信小程序服務(wù)器托管商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站