猿问

使用 java 在字符串中搜索连字符

我试图-在 string 中找到连字符的出现"TC 1 - TC 24"。为此,我使用


"TC 1 - TC 24".contains(" \\-")


但是上面的表达式没有返回true. 我究竟做错了什么?


代码如下:


if("TC 1 - TC 24".contains(" \\- ") == true) {


   //print something

}


翻过高山走不出你
浏览 165回答 3
3回答

偶然的你

Contains 如果提供的字符串包含指定的字符值序列,则 java 中的关键字返回 true因此,下面的字符串返回 True,因为它包含连字符。但是,我们不能数数。出现连字符的次数。if ("TC 1 - TC- 24".contains("-")) {&nbsp; &nbsp; System.out.println("It containes hyphen ");}我发现使用以下代码出现连字符:public static int findCharInString(String input,char inputChar) {&nbsp; &nbsp; int counter=0;&nbsp; &nbsp; for (int i = 0; i < input.length(); i++) {&nbsp; &nbsp; &nbsp; &nbsp; if(input.charAt(i)==inputChar) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; counter++;&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; }&nbsp; &nbsp; return counter;}

慕码人8056858

您可以使用String 类的indexOf方法,因为 indexOf 从给定的 String 中搜索 String。如果找到,则返回该字符串的索引,否则返回 -1。所以你可以很容易地使用indexOf。我已经给出了下面的代码,请继续。public static void main(String[] args) {&nbsp; &nbsp; String hypen="12-35";&nbsp; &nbsp; int index = hypen.indexOf("-");&nbsp; &nbsp; if (index != -1) {&nbsp; &nbsp; &nbsp; &nbsp; System.out.println("True");&nbsp; &nbsp; } else {&nbsp; &nbsp; &nbsp; &nbsp; System.out.println("False");&nbsp; &nbsp; }}
随时随地看视频慕课网APP

相关分类

Java
我要回答