查找字符串中的符号Java

问题描述:

是否有函数或其他内容用于查找字符串中的符号(例如+/-[]{})()。如果有这样的事情,请告诉或如果不知道,只知道自己开始输入代码。查找字符串中的符号Java

+1

这是做作业吗? – louisgab 2011-03-23 18:09:36

+0

你是什么意思的“发现”?你的意思是“找出它是否存在”?或“找出它所在的字符串中的位置”?或者“找出字符串中的哪个位置,与它所在的其他字符相关”? – davogotland 2011-03-23 18:10:43

如果我理解正确的话,你想知道的字符串+或 - 是。

要做到这一点,你需要搜索字符串检查你正在寻找的字符。下面的函数将返回字符串中字符位置的基于0的索引。

public List<Integer> getLocationsOfChar(String input, char c) { 
    List<Integer> locations = new ArrayList<Integer>(); 
    int index = -1; 
    int startAt = 0; 
    while ((index = input.indexOf(c, startAt)) != -1) { 
     locations.add(index); 
     startAt = index+1; 
    } 
    return locations; 
} 

要使用这一点,你会打电话:

List<Integer> locs = getLocationsOfChar("abgc+sda-+", '+') 

在这个例子中,列表locs将包含4, 9

当没有项目存在时,返回的列表将是空的。

String line = "+-/[]{}()"; 
line.indexOf("+"); // if >= 0, character exists, if < 0, character does not exist in string. 
+0

没有..只是我想找到有多少个标志,如果哪里有..位置和真实的标志..不,它不是作业。 大卫,也许我的问题并不清楚对不起,但.. ..即时搜索标志的地方..而不仅仅是一个即时通讯搜索一个字符串的所有迹象,我不知道它是什么迹象。希望我清除了我的问题 – weardstuff 2011-03-23 19:06:07

您也可以使用正则表达式。

检查了这一点太:

String API