如何在java中的字符后搜索某个单词?

时间:2015-03-06 16:23:01

标签: java string search substring

所以我正在做一些cw,我想在一个字符串中搜索一个标签后面的单词“#”。

我该怎么做? 比如说字符串是'Hello World #me'?我怎么会回复“我”这个词?

亲切的问候

6 个答案:

答案 0 :(得分:1)

使用正则表达式并准备Matcher以迭代方式查找主题标签

String input = "Hello #World! #Me";

Pattern pattern = Pattern.compile("#(\\S+)");
Matcher matcher = pattern.matcher(input);

while (matcher.find()) {
    System.out.println(matcher.group(1));
}

输出:

World!
Me

答案 1 :(得分:0)

根据该字符分割字符串

String []splittedString=inputString.split("#");
System.out.println(splittedString[1]); 

因此对于输入字符串

Hello World #me'

输出

me

答案 2 :(得分:0)

使用此

example.substring(example.indexOf("#") + 1);

答案 3 :(得分:0)

那么约翰,让我猜。你是华威大学的计算机科学专业的学生。你去吧,

String s = "hello #yolo blaaa";
           if(s.contains("#")){
                    int hash = s.indexOf("#") - 1;
                    s = s.substring(hash);
                    int space = s.indexOf(' ');
                    s = s.substring(space);
           }

如果您不想包含#

,请删除-1

答案 4 :(得分:0)

使用正则表达式:

// Matches a string of word characters preceded by a '#'
Pattern p = Pattern.compile("(?<=#)\\w*");
Matcher m = p.matcher("Hello World #me");
String hashtag = "";
if(m.find())
{
    hashtag = m.group(); //me
}

答案 5 :(得分:0)

一种简单的方法是使用indexOf,然后您应该使用indexOf

重载subString

EG:

 String myString = originalString.substring(originalString.indexOf("#"),originalString.indexOf(" "),originalString.indexOf("#"));
  

请注意,这可能会超出界限错误是找不到字符。阅读java doc链接,详细了解这是做什么的。