Kotlin学习笔记正则表达式

sfshine: 我的测试工程: http://note.youdao.com/noteshare?id=961d1921566eb877985d55a4f2c01070

JavaRegex.java(Java中的正则表达式)

public class JavaRegex {
    public static void main(String[] args) {
        String source = "Hello,This is my phone number:010-12345678."; //原文本
        //正则式,在(三位数-八位数)的格式前后可以有任意文本
        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)); //打印匹配到的信息
        }
    }
}

 

JavaRegex.java运行结果

 

</br>

KotlinUserJavaRegex.kt(在Kotlin中调用java的正则表达式)

fun main(args: Array<String>) {
    val source = "Hello,This is my phone number:010-12345678." //原文本
    //正则式,在(三位数-八位数)的格式前后可以有任意文本
    val pattern = """.*(\d{3}-\d{8}).*"""
    //用正则式匹配文本获取匹配器
    val matcher = Pattern.compile(pattern).matcher(source)

    while (matcher.find()) { //匹配器进行匹配
        println(matcher.group()) //打印元文本信息
        println(matcher.group(1)) //打印匹配到的信息
    }
}

 

KotlinUserJavaRegex.kt运行结果

 

</br>

KotlinRegex.kt(使用Kotlin中的正则表达式)

fun main(args: Array<String>) {
    val source = "Hello,This is my phone number:010-12345678." //原文本
    val pattern = """.*(\d{3}-\d{8}).*""" //正则式

    //使用kotlin方法打印出匹配出的内容
    Regex(pattern).findAll(source).toList().flatMap(MatchResult::groupValues).forEach(::println)
}

 

KotlinRegex.kt运行结果



作者:lkmc2
链接:https://www.jianshu.com/p/1afbe2a700e0
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

转载于:https://my.oschina.net/sfshine/blog/1824572

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值