侧边栏壁纸
博主头像
Stars-One的杂货小窝博主等级

所有的创作都是有价值的

  • 累计撰写 257 篇文章
  • 累计创建 46 个标签
  • 累计收到 27 条评论

目 录CONTENT

文章目录

Kotlin/Java 提取正则表达式内容

Stars-one
2021-03-12 / 0 评论 / 0 点赞 / 1321 阅读 / 1761 字

这是使用Kotlin的Regex类

val line = "xtest_hh_j_h"
val regex = Regex("test_(.*)_j")
val matchEntire = regex.matchEntire(line)
println(matchEntire?.groupValues?.get(0))//输出为test_hh_j
println(matchEntire?.groupValues?.get(1))//输出为 hh

下面这是使用Java的正则类:

// 按指定模式在字符串查找
val line = "xtest_hh_j_h"

val pattern = "test_(.*)_j"

// 创建 Pattern 对象
val r = Pattern.compile(pattern)

// 现在创建 matcher 对象
val m = r.matcher(line)
if (m.find()) {
	//m.group的长度 为 正则条件数+1
	//上述存在有(.*)的1个正则条件,所有m.group的长度为2,下标从0开始,如果打印m.group(3)就会报异常
	println("Found value: " + m.group(0)) //结果为test_hh_j
	println("Found value: " + m.group(1)) //结果为hh
	
} else {
	println("NO MATCH")
}
0

评论区