在 Scala 中查找字符串的子字符串
Mohammad Irfan
2023年1月30日
-
在 Scala 中使用
contains()
函数查找子字符串 -
在 Scala 中使用
indexOf()
函数查找子字符串 -
在 Scala 中使用
matches()
函数查找子字符串 -
在 Scala 中使用
findAllIn()
函数查找子字符串
本教程将讨论在 Scala 字符串中查找子字符串的过程。
字符串是一个字符序列和一个字符数组。Scala 提供了一个类,即 String
,来处理字符及其操作,例如创建、查找、删除等。
本文将通过使用一些内置函数和运行示例来查找字符串中的子字符串。
在 Scala 中使用 contains()
函数查找子字符串
在这里,我们使用 contains()
函数来查找字符串中的子字符串。此函数返回一个布尔值,true 或 false。请参见下面的示例。
object MyClass {
def main(args: Array[String]) {
val str = "This basket contains an apple"
println(str)
val isPresent = str.contains("apple")
if(isPresent){
println("Substring found")
}else println("Substring not fount")
}
}
输出:
This basket contains an apple
Substring found
在 Scala 中使用 indexOf()
函数查找子字符串
在这里,我们使用 indexOf()
函数来获取可用子字符串的索引。如果存在子字符串,此函数将返回大于 0 的整数值。
请参见下面的示例。
object MyClass {
def main(args: Array[String]) {
val str = "This basket contains an apple"
println(str)
val isPresent = str.indexOf("apple")
if(isPresent>0){
println("Substring found")
}else println("Substring not fount")
}
}
输出:
This basket contains an apple
Substring found
在 Scala 中使用 matches()
函数查找子字符串
我们使用 matches()
函数来搜索不准确的子字符串。有时我们想搜索某个字符串,但不知道完整的字符串,只知道其中的一部分;然后,我们可以使用这个函数来匹配整个字符串中的那个部分。
此函数返回一个布尔值,true 或 false。请参见下面的示例。
object MyClass {
def main(args: Array[String]) {
val str = "This basket contains an apple"
println(str)
val isPresent = str.matches(".*apple*")
if(isPresent){
println("Substring found")
}else println("Substring not fount")
}
}
输出:
This basket contains an apple
Substring found
在 Scala 中使用 findAllIn()
函数查找子字符串
我们使用了将参数作为字符串的 findAllIn()
函数。我们将此函数与 length 属性一起使用来获取找到的字符串的长度。
如果字符串存在,则返回大于零。请参见下面的示例。
object MyClass {
def main(args: Array[String]) {
val str = "This basket contains an apple"
println(str)
val isPresent = "apple".r.findAllIn(str).length
if(isPresent>0){
println("Substring found")
}else println("Substring not fount")
}
}
输出:
This basket contains an apple
Substring found