练习:给手机号打码
案例1:验证用户名是否合法
案例2:手机号打码
运行代码,并展示效果
注意:在根目录下自己创建!!!
// 1. 读取数据源:通过scala.io.Source.fromFile读取address.txt文件内容
val source = scala.io.Source.fromFile("address.txt").mkString
// println(scource)
// 2. 识别手机号
//val reg = """(1[3456789]\d{9})+(省|自治区|特别行政区)(\w+)市(.*?)区(.*?)路(.*?)号""".r
// 3. 替换:
// group(0) 匹配的整个字符串
//group(1) 匹配的手机号
//group(2) 匹配的省/自治区/特别行政区;
// group(3) 匹配的市
//group(4) 匹配的区
//group(5) 匹配的路
//group(6) 匹配的号
val newSource = reg.replaceAllIn(source, m => {
println(m.group(3))
println(m.group(1))
s"${m.group(1)}###${m.group(2)}###${m.group(3)}###${m.group(4)}###${m.group(5)}###${m.group(6)}"
})
// 4. 输出文件:将处理后的内容写入address_new.txt文件
val writer = new java.io.PrintWriter("address_new.txt")
writer.write(newSource)
writer.close()