正则表达式匹配字符串
代码
import scala.util.matching.Regex
object RegDemo extends App{
//构建正则表达式
//方式一
val pattern1="[0-9]+".r
//方式二
val patter2=new Regex("[0-9]+")
//方式三
val patter3 = """\s+[0-9]+\s"""//如果正则表达式有斜杆或者引号,可以使用""" ...""""
//匹配字符串
val matchStr = "99botolll,100bottoll"
//遍历字符串,寻找满足条件的所有子串
for(item<- pattern1.findAllIn(matchStr))println("遍历字符串:"+item)
//寻找满足条件的第一个子串
val first = pattern1.findFirstIn(matchStr)
println("第一个子串:"+first)
val ifStartMatch = pattern1.findPrefixOf(matchStr)
println(ifStartMatch)
//替代满足条件的第一个的子串
val res1 = pattern1.replaceFirstIn(matchStr,"bob")
println("替代满足条件的第一个的子串:"+res1)
//替代满足条件的子串
val res2=pattern1.replaceAllIn(matchStr,"###")
println("替代满足条件的子串:"+res2)
}
运行结果
遍历字符串:99
遍历字符串:100
第一个子串:Some(99)
Some(99)
替代满足条件的第一个的子串:bobbotolll,100bottoll
替代满足条件的子串:###botolll,###bottoll
Process finished with exit code 0