当前位置: 技术问答>java相关
关于String类的split方法
来源: 互联网 发布时间:2017-04-08
本文导语: String str=new String("ab+de"); String[] strs=str.split("+"); System.out.println(strs[0]); 上面的代码,运行时报如下错误: ---------- java ---------- java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0 + ^ at java.util.regex.Pa...
String str=new String("ab+de");
String[] strs=str.split("+");
System.out.println(strs[0]);
上面的代码,运行时报如下错误:
---------- java ----------
java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0
+
^
at java.util.regex.Pattern.error(Pattern.java:1472)
at java.util.regex.Pattern.sequence(Pattern.java:1586)
at java.util.regex.Pattern.expr(Pattern.java:1489)
at java.util.regex.Pattern.compile(Pattern.java:1257)
at java.util.regex.Pattern.(Pattern.java:1013)
at java.util.regex.Pattern.compile(Pattern.java:760)
at java.lang.String.split(String.java:1791)
at java.lang.String.split(String.java:1834)
at Test.main(Test.java:26)
Exception in thread "main" Normal Termination
输出完成(耗时 2 秒)。
但如果把“+”改为其他符号就没有问题,这是为什么呀?
String[] strs=str.split("+");
System.out.println(strs[0]);
上面的代码,运行时报如下错误:
---------- java ----------
java.util.regex.PatternSyntaxException: Dangling meta character '+' near index 0
+
^
at java.util.regex.Pattern.error(Pattern.java:1472)
at java.util.regex.Pattern.sequence(Pattern.java:1586)
at java.util.regex.Pattern.expr(Pattern.java:1489)
at java.util.regex.Pattern.compile(Pattern.java:1257)
at java.util.regex.Pattern.(Pattern.java:1013)
at java.util.regex.Pattern.compile(Pattern.java:760)
at java.lang.String.split(String.java:1791)
at java.lang.String.split(String.java:1834)
at Test.main(Test.java:26)
Exception in thread "main" Normal Termination
输出完成(耗时 2 秒)。
但如果把“+”改为其他符号就没有问题,这是为什么呀?
|
public class CharTest
{
public static void main(String[] args)
{
String str = "abc+efg";
String[] strs = str.split("[+]");
for(int i = 0; i
{
public static void main(String[] args)
{
String str = "abc+efg";
String[] strs = str.split("[+]");
for(int i = 0; i