代码+图文讲解spark中scala常用正则匹配

1.准备测试数据集

首先建立一个文本文件,作为我们测试的数据,内容如下:除第三列与第四列是空格外,其余列于列之间都是tab键,第一行第三列与第四列为1个空格,第2行第三列与第四列为2个空格,第3行第三列与第四列为3个空格,第4行第三列与第四列为4个空格:


2.\\s匹配任意多个空白字符

  1. val rdd7 =sc.textFile("G:\\zhengze.txt")  
  1. val rdd9 = rdd7.flatMap(_.split("\\s"))  
  1. println(rdd9)  
  2. rdd9.foreach(x => print(x+"*"))  

 结果如图:


3.\\S匹配任意不是空白的字符

  1. val rdd7 =sc.textFile("G:\\zhengze.txt")  
  2.   
  3. val rdd9 = rdd7.flatMap(_.split("\\S"))  
  4.   
  5. println(rdd9)  
  6.   
  7. rdd9.foreach(x => print(x+"*"))  

结果如下图所示:


4.\\d匹配任意多个数字

  1. val rdd7 =sc.textFile("G:\\zhengze.txt")  
  2.   
  3.  val rdd9 = rdd7.flatMap(_.split("\\d"))  
  4.   
  5.  println(rdd9)  
  6.   
  7.  rdd9.foreach(x => print(x+"*"))  

结果如下图所示:


5.\\D匹配任意多个非数字字符

结果如图所示:



posted @ 2017-03-19 15:48  kiydkafa  阅读(1159)  评论(0编辑  收藏  举报