【45】kotlin 正则
原创
©著作权归作者所有:来自51CTO博客作者mp624183768的原创作品,请联系作者获取转载授权,否则将追究法律责任
java正则
package com.yzdzy.kotlin.chapter8.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MainJava {
public static void main(String... args){
String source = "Hello ,this muy phone number:010-123456789";
String pattern =".*(\\d{3}-\\d{8}).*";
Matcher matcher= Pattern.compile(pattern).matcher(source);
while (matcher.find()){
System.out.println(matcher.group());
System.out.println(matcher.group(1));
}
}
}
kt 同样支持java 但是也有自己的正则方法
package com.yzdzy.kotlin.chapter8.regex
import java.util.regex.Pattern
fun main(args: Array<String>) {
val source = "Hello ,this muy phone number:010-123456789"
val pattern = ".*(\\d{3}-\\d{8}).*"
val matcher = Pattern.compile(pattern).matcher(source)
while (matcher.find()) {
println(matcher.group())
println(matcher.group(1))
}
ktRegex()
}
fun ktRegex(){
val source = "Hello ,this muy phone number:010-123456789"
val pattern = """.*(\d{3}-\d{8}).*"""
Regex(pattern).findAll(source).toList().flatMap (MatchResult::groupValues).forEach(::println)
}
输入
Hello ,this muy phone number:010-123456789
010-12345678
Hello ,this muy phone number:010-123456789
010-12345678
kt 可以使用 """RawString"""
用Raw字符串定义正则表达式