按 space 而非 returns 所有元素拆分字符串
Splitting string by space not returns all of the elements
当我尝试根据 space 作为分隔符拆分字符串,然后像下面那样在其上应用 contains 方法时
"no EJAVA here".contains("JAVA")
res0: Boolean = true
对于那个字符串,当我尝试使用 string_var.contains("JAVA") 时,它 returns 是正确的,但是当我使用
尝试它时
"no EJAVA here".split(" ").contains("JAVA")
res1: Boolean = false
那么它 returns 错误,Array[String] 是搜索数组的完整元素还是匹配单个元素中的子字符串?
它正在返回所有拆分的字符串。它找不到 "JAVA" 的原因是因为包含拆分字符串的数组中没有元素等于 JAVA
。虽然,如果您键入:
string_var.split(" ").contains("""JAVA",[http://collaboratory.emsl.pnl.gov/docs/collab/sam/CodeStandards.html""")
,您将获得:
res: Boolean = true
REPL 中的一个简单测试证明了这个问题。
scala> "no EJAVA here".contains("JAVA")
res0: Boolean = true
scala> "no EJAVA here".split(" ").contains("JAVA")
res1: Boolean = false
String
上的 contains()
方法将查找任何子字符串,但 Array[String]
上的 contains()
方法只会匹配数组,而不是元素中的子字符串。
当我尝试根据 space 作为分隔符拆分字符串,然后像下面那样在其上应用 contains 方法时
"no EJAVA here".contains("JAVA")
res0: Boolean = true
对于那个字符串,当我尝试使用 string_var.contains("JAVA") 时,它 returns 是正确的,但是当我使用
尝试它时"no EJAVA here".split(" ").contains("JAVA")
res1: Boolean = false
那么它 returns 错误,Array[String] 是搜索数组的完整元素还是匹配单个元素中的子字符串?
它正在返回所有拆分的字符串。它找不到 "JAVA" 的原因是因为包含拆分字符串的数组中没有元素等于 JAVA
。虽然,如果您键入:
string_var.split(" ").contains("""JAVA",[http://collaboratory.emsl.pnl.gov/docs/collab/sam/CodeStandards.html""")
,您将获得:
res: Boolean = true
REPL 中的一个简单测试证明了这个问题。
scala> "no EJAVA here".contains("JAVA")
res0: Boolean = true
scala> "no EJAVA here".split(" ").contains("JAVA")
res1: Boolean = false
String
上的 contains()
方法将查找任何子字符串,但 Array[String]
上的 contains()
方法只会匹配数组,而不是元素中的子字符串。