0

我在java中有一个字符串,看起来像:

holdingco^(218) 333-4444^scott@holdingco.com

我设置了一个等于它的字符串变量:

String value = "holdingco^(218) 333-4444^scott@holdingco.com";

然后我想将此字符串拆分为它的组件:

String[] components = value.split("^");

但是它不会拆分字符串。我试过逃避胡萝卜定界符无济于事。

4

2 回答 2

8

采用

String[] components = value.split("\\^");

未转义^表示正则表达式中字符串的开头,未转义$表示结束。您必须使用两个反斜杠进行转义,因为字符串文字"\\"代表一个反斜杠,而这正是正则表达式所需要的。

如果您尝试使用一个反斜杠转义,它不会编译,因为\^它不是 Java 中的有效转义序列。

于 2013-04-09T18:35:19.037 回答
0

尝试:value.split("\\^");这应该会更好一些

于 2013-04-09T18:35:18.727 回答