构造一个Regex对象,用String类的r方法
import scala.util.matching.Regex
val numPattern = "[0-9]+".r
如果正则表达式包含反斜杠或者引号的话,那么最好使用“原始”的字符串语法"""...""",如:
val wsnumwsPattern = """\s+[0-9]+\s+""".r
findAllIn方法返回遍历所有的匹配项的迭代器:
for (matchString <- numPattern.findAllIn("99 bottles,98 bottles")) print matchString
将迭代器转换成数组:
val matches = numPattern.findAllIn("99 bottles,98 bottles").toArray
findFristIn找到字符串中的首个匹配项:
val ml = wsnumwsPattern.findFristIn("99 bottles,98 bottles")//Some("99")
findPrefixOf检查某个字符串的开始部分能匹配:
numPattern.findPrefixOf("99 bottles,98 bottles")//Some("99")
replaceFirstIn,replaceAllIn替换匹配项:
numPattern.replaceAllIn("99 bottles,98 bottles","xx")
正则表达式组,可以把把正则表达式对象当做提取器
val numitemPattern = "([0-9]+)([a-z]+)".r
val numitemPattern(num,item) = "99 item" //将num设为"99",item设为"item"
本文来自<<快学scala>>读书笔记