unapplySeq
方法(或属性)属于StringContext.s对象(object),其相关用法说明如下。
用法:
def unapplySeq(s: String): Option[Seq[String]]
简单的字符串匹配器。
尝试通过简单的通配符将输入字符串与给定的插值模式匹配,这与简单插值器相反。
这是一个示例用法:
val s"Hello, $name" = "Hello, James"
println(name) // "James"
在此示例中,字符串 "James" 最终匹配模式 $name
所在的位置,因此最终绑定到该变量。
支持多个匹配:
val s"$greeting, $name" = "Hello, James"
println(greeting) // "Hello"
println(name) // "James"
s
匹配器可以匹配 ${}
块中的任意模式,例如:
val TimeSplitter = "([0-9]+)[.:]([0-9]+)".r
val s"The time is ${TimeSplitter(hours, mins)}" = "The time is 10.50"
println(hours) // 10
println(mins) // 50
在这里,我们在 s
匹配器中使用 TimeSplitter
正则表达式,进一步将匹配的字符串 "10.50" 拆分为其组成部分
相关用法
- Scala string.Length用法及代码示例
- Scala string.Substring用法及代码示例
- Scala string.+用法及代码示例
- Scala string.Matches用法及代码示例
- Scala sys.SystemProperties用法及代码示例
- Scala Tabulate.sliding用法及代码示例
- Scala ArrayBuffer.inits用法及代码示例
- Scala long.BitwiseOr用法及代码示例
- Scala StringBuilder.partitionMap用法及代码示例
- Scala List distinct()用法及代码示例
- Scala DefaultMap.sizeIs用法及代码示例
- Scala StrictOptimizedIterableOps.sliding用法及代码示例
- Scala Searching.SearchResult用法及代码示例
- Scala ::.collectFirst用法及代码示例
- Scala TreeSet diff()用法及代码示例
- Scala Char getClass()用法及代码示例
- Scala int.Min用法及代码示例
- Scala IntMap.groupMap用法及代码示例
- Scala Map3.mkString用法及代码示例
- Scala IterableOnceOps.flatMap用法及代码示例
- Scala IndexedSeqOps.lengthIs用法及代码示例
- Scala Map3.addString用法及代码示例
- Scala WrappedString.scanRight用法及代码示例
- Scala String compareToIgnoreCase()用法及代码示例
- Scala List drop()用法及代码示例
注:本文由纯净天空筛选整理自scala-lang.org大神的英文原创作品 s.unapplySeq。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。