DT大数据梦工厂 温故而知新 之19讲


王家林亲授 大数据开发语言《Scala深入浅出实战经典》(1-71讲全部视频、代码、PPT)下载 ,总共有140讲Scala视频!
百度云:http://pan.baidu.com/s/1jGjFpWy
腾讯微云:http://url.cn/TnGbdC

360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2


DT大数据梦工厂 温故而知新 之19讲scala 中的正则的demo


package TestPractice.toweek


import java.sql.Blob


/**
 * @author Administrator
 */
object RegexDemo {
  
    def main(args: Array[String]): Unit = {
      val regex="""([0-9]+) ([a-z]+)""".r
      val numPatterncur ="""([0-9]+) ([a-z]+) ([a-z]+)""".r
      val numPattern ="[0-9]+".r
      val numberPattern="""\s+[0-9]+\s+""".r
      //findAll 方法 返回遍历所有的匹配项的迭代器
      for(matchsting<-numPattern.findAllIn("99934 scala 2222 45455 spark"))println(matchsting)
      //找到首个匹配项 
      println(numberPattern.findFirstIn(" 999 java 222 333 hadoop"))
      val regex(num,item)="99 hadoop"
      
      //正则表达式的匹配模式
      val line="993932222 spark scala"
      line  match {
        case regex(num,item) => println("num :"+num+"\t"+item)
        case numPatterncur(num,item,tem)=>println(num+"\t"+item+"\t"+tem)
        case _ => println("ohhhh.....")
      }
    }
  
}

控制台输出

99934
2222
45455
Some( 999 )
993932222 spark scala

//总结 :  scala正则表达式的匹配模式 是用 match 关键字进行的  与java中的用法一样 只是语法遵循scala 语法

你可能感兴趣的:(scala)