当前位置:  开发笔记 > 编程语言 > 正文

为什么Regex模式匹配有时在Scala中不起作用

如何解决《为什么Regex模式匹配有时在Scala中不起作用》经验,为你挑选了1个好方法。



1> Tzach Zohar..:

在Scala中,默认情况下会锚定正则表达式- 如果您将其设为unanchored,则可以使用:

val HOSTNAME = "^http[s]:\\/?\\/?([^:\\/\\s]+)".r.unanchored

结果将是Some(foo-bar.hostname.com)(我假设你正在尝试匹配).

或者 - 在下一个斜杠之后添加一个匹配任何东西的零件:

val HOSTNAME = "^http[s]:\\/?\\/?([^:\\/\\s]+)\\/.*".r

会返回相同的结果.

最后 - 如果您只想解析标准URI,可以使用java.net.URI:

URI.create(text).getHost // returns foo-bar.hostname.com

推荐阅读
吻过彩虹的脸_378
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有