Java –如何分割字符串
要拆分字符串,请使用 (regex) 。 查看以下示例:
String phone = "012-3456789"; String[] output = phone.split("-"); System.out.println(output[0]); System.out.println(output[1]);
输出量
012 3456789
注意 此split (regex)将正则表达式作为参数,请记住转义 ,例如句点/点。
1.分割句点/点
句点/点是正则表达式中的特殊字符,您必须使用双反斜杠\.对其进行转义\. 或使用Pattern.quote方法。
TestSplit.java TestSplit.java
package com.mkyong.test import java.util.regex.Pattern; public class TestSplit { public static void main(String[] args) { String test = "abc.def.123"; String[] output = test.split("\."); //alternative //String[] output = test.split(Pattern.quote(".")); System.out.println(output[0]); System.out.println(output[1]); System.out.println(output[2]); } }
输出量
abc def 123
拆分前的一些常见检查。
TestSplit.java TestSplit.java
package com.mkyong.test import java.util.regex.Pattern; public class TestSplit { public static void main(String[] args) { String test = "abc.def.123"; if(test.contains(".")){ String[] output = test.split("\."); if(output.length!=3){ throw new IllegalArgumentException(test + " - invalid format!"); }else{ System.out.println(output[0]); System.out.println(output[1]); System.out.println(output[2]); } }else{ throw new IllegalArgumentException(test + " - invalid format!"); } } }
2. StringTokenizer示例
在过去,Java开发人员喜欢使用类来拆分字符串。 这是因为StringTokenizer类自JDK 1.0起可用,而String.split()自JDK 1.4起可用
TestSplit.java TestSplit.java
package com.mkyong.test import java.util.StringTokenizer; public class TestSplit { public static void main(String[] args) { String test = "abc.def.123"; StringTokenizer token = new StringTokenizer(test, "."); while (token.hasMoreTokens()) { System.out.println(token.nextToken()); } } }
输出量
abc def 123
注意 此StringTokenizer是一个旧类,出于兼容性原因而保留,不建议使用! 请使用string.split() 。
参考文献
标签: 标签:
翻译自:
上一篇:
IDEA上Java项目控制台中文乱码