使用多个分隔符Java分割字符串

时间:2013-04-02 21:13:46

标签: java string split delimiter

我想使用多个分隔符拆分字符串。现在我正在使用这个: String delims = "[\\s;.,:'!?()]";  这似乎适用于那些角色,但是当我尝试添加-字符时,它会对我大喊大叫。如何使用所有这些字符加上-作为分隔符来分割我的字符串?提前致谢!

2 个答案:

答案 0 :(得分:5)

  • 里面的字符类有特殊意义。它通常用于选择一系列字符,例如:[a-z] ...为了单独匹配短划线...要么将其保留在开头还是结尾

我刚试过这个并且有效

  String regex = "[\\s;.,:'!?()-]";
  String text = "jatin-shah-testing";

  String[] tokens = text.split(regex);
  for(int i = 0; i < tokens.length; i++)
    System.out.println(tokens[i]);

答案 1 :(得分:1)

-在字符类中具有特殊含义,表示范围。 (例如[0-9]将匹配任何数字。)

但是,如果您将其作为第一个字符或最后一个字符放置,则将其作为文字-进行匹配。