0

如何添加一个参数来检查一个字符串是否包含一个引号?我试图逃避角色,但它不起作用

words[i].contains()

编辑:我的错,有一些未闭合的括号,现在可以正常工作

4

4 回答 4

5
words[i].matches("[^\"]*\"[^\"]*")

那就是:任何非引号,一个引号,任何非引号。

于 2013-04-16T13:13:08.013 回答
3

你可以使用这样的东西:

words[i].split("\"").length - 1

这会给你"字符串中 s 的数量。因此,只需使用:

if (words[i].split("\"").length == 2) {
    //do stuff
}
于 2013-04-16T13:08:57.293 回答
2

您可以检查第一个引号是否存在,然后检查第二个引号是否不存在。它比使用匹配或拆分要快得多。

int index = words[i].indexOf('\"');
if (index != -1 && words[i].indexOf('\"', index + 1) == -1){
    // do stuff
}
于 2013-04-16T13:24:00.127 回答
0

要检查数字或引号,您还可以在删除后使用字符串长度"

int quotesNumber = words[i].length() - words[i].replace("\"", "").length();
if (quotesNumber == 1){
    //do stuff
}
于 2013-04-16T13:28:09.877 回答