我编写了一种方法来检查字符串是否包含各种值。
def validateString(metricValue: String): Boolean = {
(!StringUtils.containsIgnoreCase(metricValue, "metric_1")
&& StringUtils.containsIgnoreCase(metricValue, "metric_2")
|| StringUtils.containsIgnoreCase(metricValue, "metric_3")
}
然后,我决定将最后两张支票简化为一张,但没有发现对commons-lang-2.6
有用的任何内容。
我知道lang 3
中有一种类似的方法:StringUtils.equalsAnyIgnoreCase(str, "val1", "val2", "val3"))
。但是我需要类似containsAnyIgnoreCase
的东西。
是否有一种方法可以检查字符串中是否存在多个值而忽略大小写?
答案 0 :(得分:4)
尝试
List("metric_2", "metric_3")
.map(_.toLowerCase)
.contains(metricValue.toLowerCase)
答案 1 :(得分:1)
如果您想使用StringUtils
:
def validateString(metricValue: String): Boolean =
List("metric_2", "metric_3").exists(metricToCheck => StringUtils.containsIgnoreCase(metricValue, metricToCheck))