regex - 用于获取 Scala 中行的最后一个分隔符之后的数字的正则表达式
问题描述
我的线是889¦20457892¦955
我想得到955
输出,这是我的代码,但它给出None
了结果
val pattern = "(^¦*)$\\d+".r
val str = "889¦20457892¦955"
println(pattern findFirstIn str)
这是正确的正则表达式吗?
解决方案
您可以使用
val pattern = """(?<=¦)\d+$""".r
val str = "889¦20457892¦955"
println(pattern findFirstIn str)
这里,
(?<=¦)
- 紧随其后的位置¦
\d+
- 1+ 位数$
- 字符串结束。
¦
或者,您可以只使用char拆分并获取最后一项:
println(str.split('¦').last)
查看Scala 演示
推荐阅读
- amazon-ec2 - 即使手动将公钥添加到 authorized_keys 也无法连接到 AWS 实例
- javascript - 无法使用 pinterest js SDK 通过 javascript 创建 pinterest pin
- c# - 在指定路径中找不到项目
- asp.net - 如何忽略包含 aspx 中的错误“未声明 var。由于其保护级别,它可能无法访问。”
- java - java.lang.ClassCastException: java.math.BigInteger 不能用 sql 和 java 转换为 java.lang.Long Spring
- teamsql - 为什么团队 sql 运行查询这么慢?
- ionic-view - 离子图标的条件外观
- javascript - 在 componentDidCatch 之后重定向用户的方法
- javascript - 如何在 HightCharts 钟形曲线上呈现特定的数据点标记?
- bash - Bash 输出杀死用法