如何在java中检查字段是否包含连字符

如何在java中检查字段是否包含连字符,java,Java,我的对象从返回我- Log.d(“FormattedDate”,Object.getDOB()) 我正在检查我的Object.getDOB()是否与-匹配,然后显示空字符串,但此regExp不起作用。有一个方法可以为您执行此操作: 当且仅当此字符串包含指定的 字符值的序列 您可以在java中使用contains()来搜索String类中提供的内容 当且仅当此字符串包含指定的 字符值的序列 您也可以使用 if (Object.getDOB().indexOf("-") != -1) { /

我的对象从返回我
-
Log.d(“FormattedDate”,Object.getDOB())

我正在检查我的Object.getDOB()是否与
-
匹配,然后显示空字符串,但此regExp不起作用。

有一个方法可以为您执行此操作:

当且仅当此字符串包含指定的 字符值的序列

您可以在java中使用
contains()
来搜索
String
类中提供的内容

当且仅当此字符串包含指定的 字符值的序列

您也可以使用

if (Object.getDOB().indexOf("-") != -1) {
    //code
}

如果返回
-1
,则字符串不包含字符(在本例中为
“-”
)。否则它将返回字符的索引。

只需使用String.contains方法,但您确定记录器没有添加此“-”吗?奇怪的是,它在Java 8中不起作用。我在这个愚蠢的问题上花了好几个小时。我不能用“-”拆分“Flesch–Kincaid”,它对我无效selectedProductName=selectedProductName.replaceAll(“-”,”)@AkashChavan
String.replaceAll
将正则表达式作为第一个参数,连字符(
“-”
)是正则表达式中的特殊字符,因此必须对其进行转义。请尝试
selectedProductName=selectedProductName.replaceAll(“\\-”,”)
有没有办法多次查看字符串是否包含字符?@jDub9当然可以:
String[]parts=text.split(character)
int-occurrences=parts.length-1
if (Object.getDOB().contains("-")) {
    //code
}
getDOB().contains("-")
if (Object.getDOB().indexOf("-") != -1) {
    //code
}