请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

MatchResult

老师你好,我有个问题:findAll().asInterable().map{matchResult},这里都能理解,但是这个groupValues[1],groupValues[3]就是key, url这是怎么看出来的

fun main(args: Array<String>) {
    val URL_PATTERN = """(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"""
    val link = "<https://api.github.com/user/9794076/repos?type=all&page=2&per_page=20>; rel=\"next\", <https://api.github.com/user/9794076/repos?type=all&page=11&per_page=20>; rel=\"last\""
    Regex("""<(${URL_PATTERN})>; rel="(\w+)"""").findAll(link).asIterable()

            .map {
                val url = it.groupValues[1]
                val key = it.groupValues[3]
                println("key:$key")
                println("url:$url")
                it.groupValues.map { value ->
                    println(value)
                }

            }

}

正在回答

1回答

正则表达式,数一下小括号对应的位置就知道了

0 回复 有任何疑惑可以回复我~
  • 我又去翻了一下正则表达式,()在正则表达式中表达的分组,这下明白了,谢谢了
    回复 有任何疑惑可以回复我~ 2020-04-20 16:18:07
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信