1, regular expressions, native expression
scala> val regex="""([0-9]+)([a-z]+)""".r
regex: scala.util.matching.Regex = ([0-9]+)([a-z]+)
scala> val numPattern="[0-9]+".r
numPattern: scala.util.matching.Regex = [0-9]+
scala> val numberPattern="""\s+[0-9]+\s+""".r
numberPattern: scala.util.matching.Regex = \s+[0-9]+\s+
Description: .r () method Introduction: Scala where the character string is converted to a regular expression
by You Follow A String with CAN .r
, Turning IT INTO A Regex
Eg of. """A\w*""".r
IS The Regular expression The identifiers for Starting with A
.def r: Regex = r()
2, a pattern matching
scala> val numPattern="[0-9]+".r
numPattern: scala.util.matching.Regex = [0-9]+
scala> for(m <- numPattern.findAllIn("99345 Scala,22298 Spark")) println(m)
99345
22298
findAllIn (...) function Introduction
// findAllIn () method returns an iterator to traverse all matches
def findAllIn (source: CharSequence) = new Regex.MatchIterator (source, this, groupNames)
3, pattern matching two
// find the first match
scala> val numPattern="[0-9]+".r
numPattern: scala.util.matching.Regex = [0-9]+
scala> println(numPattern.findFirstIn("88ss Java,333 Spark ,654 Hadoop"))
Some(88)
4, three pattern matching
scala> val numitemPattern="""([0-9]+) ([a-z]+)""".r
numitemPattern: scala.util.matching.Regex = ([0-9]+) ([a-z]+)
scala> val numitemPattern(num, item)="99 hadoop"
num: String = 99
item: String = hadoop
5, four pattern matching
A combination of numbers and letters // regular expression
scala> val numitemPattern="""([0-9]+) ([a-z]+)""".r
numitemPattern: scala.util.matching.Regex = ([0-9]+) ([a-z]+)
scala> val line="93459 spark"
line: String = 93459 spark
scala> line match{
| case numitemPattern(num,blog)=> println(num+"\t"+blog)
| case _=>println("hahaha...")
| }
93459 spark
6, pattern matching five
object RegexSyllabus {
def main(args: Array[String]): Unit = {
import scala.util.matching.Regex
val pattern1 = new Regex("(S|s)cala")
val pattern2 = "(S|s)cala".r
val str = "Scala is scalable and cool"
println((pattern2 findAllIn str).mkString(","))
println((pattern1 findAllIn str).mkString(","))
}
}
Reproduced in: https: //www.jianshu.com/p/258b35f62465