2013-06-12 55 views
3

我的对象返回我-从 Log.d(“FormattedDate”,Object.getDOB());如何检查字段是否包含连字符中的连字符

if (!Object.getDOB().matches("[^-]*")) { 
    txtDOB.setText(Object.getDOB()); 
    } else { 
    txtDOB.setText("-"); 
} 

我检查,如果我的Object.getDOB()与-匹配,则表明emptry字符串,但这个正则表达式是行不通的。

+1

只需使用String.contains方法,但是您确定此' - '不被Logger添加? – StarPinkER

回答

5

java.lang.StringString#contains()方法,这是否对你:

返回true当且仅当此字符串包含char值的指定 序列。

if (Object.getDOB().contains("-")) { 
    //code 
} 
+1

创建一个链接到源代码总是一个好主意。 – Maroun

+0

谢谢Maroun! – darijan

+0

奇怪的是,它在Java 8中不起作用。我在这个愚蠢的问题上花费了数小时。我不能将'Flesch-Kincaid'拆分为' - ' –

1

您可以使用在java中进行搜索,当且仅当此字符串包含char值的指定 序列可在String

返回true。

getDOB().contains("-") 

SEE HERE

2

你也可以使用

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

如果返回-1那么字符串不包含的字符(在你的情况"-")。否则,它返回char的索引。

相关问题