一次拆分包含多个模式的单个字符串

时间:2013-11-13 16:53:31

标签: java regex string

我有一个电话/传真号码,我希望一次根据-()个字符对其进行拆分。

String number= "(1234) 567-8910"; 

2 个答案:

答案 0 :(得分:2)

尝试使用正则表达式\s*[()-]\s*。这里\s*将省略数字之间的所有空格。

 String[] num=number.split("\\s*[()-]\\s*");
 for (String n : num) {
        System.out.print(" "+n);
 }

输出:1234 567 8910

答案 1 :(得分:2)

您可以使用Tokenizer分割多个分隔符。请参考以下代码。

String number= "(1234) 567-8910";

         StringTokenizer tokens = new StringTokenizer(number, "()- ");
         String part1 = tokens.nextToken();
         String part2 = tokens.nextToken();
         String part3 = tokens.nextToken();