Java奇怪的字符串处理

JDK:java1.4


 自己拼了一个字符串,要把字符串切割成一个字符数组并且进行相应的赋值操作。
 如:String str = "CA(中国国际航空公司)$CA1502$2010-08-20$11:55$2010-08-20$14:20$747$50$2600";
 切割操作时,String[] ttt = str.split("$");
 结果结果却是ttt.lenth=1
 然后切割后的第一个字符ttt[0]就是切割前的字符串。
 料想Java的API不应该那么低级吧,这种功能都不能实现,那不是吐血。


 之前一个同事用replace方法也是不行的。想想应该是$是特殊字符串吧。是不是需要转义呢。
Goole了一下 确实是这个原因。正确的代码如下:

 

 

public static void main(String[] args) {
  String str = "CA(中国国际航空公司)$CA1502$2010-08-20$11:55$2010-08-20$14:20$747$50$2600";
  String[] ttt = str.split("//$");

  System.out.println(ttt.length);
  for (int i = 0; i < ttt.length; i++) {
   System.out.println(ttt[i]);

  }
  System.out.println(ttt[0]);

 }

 

确实是需要转义的。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值