Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 重复使用正在使用on模式/匹配/替换/分割火花功能的字符串_Scala_Apache Spark - Fatal编程技术网

Scala 重复使用正在使用on模式/匹配/替换/分割火花功能的字符串

Scala 重复使用正在使用on模式/匹配/替换/分割火花功能的字符串,scala,apache-spark,Scala,Apache Spark,我有一个没有分隔符的文本文件,它就像一张购物单,大多数交易都以以下内容开始: **25/11/2019 05:36:32 INSERTED** 但有些人不知道,我正在试图找到一种方法,将该字符串用作分隔符,同时我还在尝试使用它,即数据添加一个“|”来分隔记录 原件: **25/11/2019 05:36:32 INSERTED (Some transactions) 25/11/2019 05:38:32 INSERTED (Some trans) 25/11/2019 05

我有一个没有分隔符的文本文件,它就像一张购物单,大多数交易都以以下内容开始:

**25/11/2019 05:36:32    INSERTED**
但有些人不知道,我正在试图找到一种方法,将该字符串用作分隔符,同时我还在尝试使用它,即数据添加一个“|”来分隔记录

原件:

**25/11/2019 05:36:32    INSERTED (Some transactions) 25/11/2019 05:38:32    INSERTED (Some trans) 25/11/2019 05:42:32    INSERTED**
目标:

但我得到:

** (Some transactions) | (Some trans) |**
我使用的最后一个函数是:

val vStringRDD = stringRDD.map{x => x.split("[0-9]{2}/[0-9]{2}/[0-9]{4}[ ]{1}[0-9]{2}:[0-9]{2}:[0-9]{2}[ ]{4}INSERTED").mkString("|")

使用Regex replace和insert可重用在pattern/matched/replace/split上使用的字符串

str.replaceAll((regex1)(regex2),“$1插入$2”)


使用Regex replace和insert可重用在pattern/matched/replace/split上使用的字符串

str.replaceAll((regex1)(regex2),“$1插入$2”)


谢谢,真的很有帮助。谢谢,真的很有帮助。
val vStringRDD = stringRDD.map{x => x.split("[0-9]{2}/[0-9]{2}/[0-9]{4}[ ]{1}[0-9]{2}:[0-9]{2}:[0-9]{2}[ ]{4}INSERTED").mkString("|")
val vStringRDD = stringRDD.map { x =>
  println(s"Map: $x")
  val o = x.replaceAll("()([0-9]{2}/[0-9]{2}/[0-9]{4}[ ]{1}[0-9]{2}:[0-9]{2}:[0-9]{2}[ ]{1}INSERTED)", "$1 | $2")
  println(s"Output: $o")
  o
}

//Output
Map: 25/11/2019 05:36:32 INSERTED (Some transactions) 25/11/2019 05:38:32 INSERTED (Some trans) 25/11/2019 05:42:32 INSERTED
Output:  | 25/11/2019 05:36:32 INSERTED (Some transactions)  | 25/11/2019 05:38:32 INSERTED (Some trans)  | 25/11/2019 05:42:32 INSERTED