我有一个非常简单的字符串,如下所示:
"Some(1234)"
我想从中提取“1234”。我该怎么办?
答案 0 :(得分:5)
val s = "Some(1234)"
//s: java.lang.String = Some(1234)
val Pattern = """Some\((\d+)\)""".r
//Pattern: scala.util.matching.Regex = Some\((\d+)\)
val Pattern(number) = s
//number: String = 1234
根据您的需要切换正则表达式。 \d+
仅限数字。
答案 1 :(得分:3)
scala> val s = "Some(1234)"
s: String = Some(1234)
scala> val nums = "[0-9]".r
nums: scala.util.matching.Regex = [0-9]
scala> nums.findAllIn(s).mkString
res0: String = 1234
答案 2 :(得分:1)
从<div>
<Document
file = {"https://ipfs.io/ipfs/" + this.state.IPFSlink}
onLoadSuccess={this.onDocumentLoadSuccess}
>
<Page pageNumber={pageNumber} />
</Document>
</div>
开始,可以按unapplying a string interpolator模式匹配Scala 2.13
s:
String
还要注意,如果是从val s"Some($number)" = "Some(1234)"
// number: String = 1234
版本中提取Option[Int]
,则可以对toString
使用插值提取:
match statement