Java String.split不工作
我有一个以下格式的字符串:Java String.split不工作,java,regex,Java,Regex,我有一个以下格式的字符串: CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM 我可以使用String.split ~$~还是必须使用StringTokenizer?上面的字符串中只有2个参数,这就是为什么我尝试使用string.Split ~$,但它似乎不起作用。$在正则表达式中,表示行尾。为了使它简单,您需要转义它,例如使用 \\$, [$] 或使用报价单\\Q$\\E。 因为split方法将参数视为正则表
CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM
我可以使用String.split ~$~还是必须使用StringTokenizer?上面的字符串中只有2个参数,这就是为什么我尝试使用string.Split ~$,但它似乎不起作用。$在正则表达式中,表示行尾。为了使它简单,您需要转义它,例如使用
\\$,
[$]
或使用报价单\\Q$\\E。
因为split方法将参数视为正则表达式,而$是正则表达式中的特殊元字符。您需要避开$sign:-
试一试
可以使用String.split执行此操作。不需要使用StringTokenizer。请参见下面的示例
String s="CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
String test[]=s.split("\\~\\#\\$\\~");
System.out.println(test[0]);
System.out.println(test[1]);
如果有任何问题,请告诉我 类似的问题。你试的时候发生了什么?您是否将结果捕获到字符串[]中?
String s = "CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
Arrays.toString(s.split("~#\\$~"))
String str = "CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
String[] pieces = str.split("~#\\$~");
String s="CT-d0712728-867d-4cc4-bd0c-b2a679b8385f~#$~2012-10-16 02:13:27 PM";
String test[]=s.split("\\~\\#\\$\\~");
System.out.println(test[0]);
System.out.println(test[1]);