"123$$456".split("$$")的结果长度为什么为1?为什么,有测试代码 谢谢

javamy015 2013-08-06 02:12:59

import junit.framework.Assert;
import android.test.AndroidTestCase;
import android.util.Log;

public class TestService extends AndroidTestCase
{
public void testAdd()
{

String str = "123$$456";
String[] infoStrings = str.split("$$");
Log.w("TestService", str + "=>" + Integer.toString(infoStrings.length));
Assert.assertEquals(infoStrings.length, 2);
/**
* 为什么这里返回的 infoStrings 为 1 不是 2 呢
*/
}

public void testAdd2()
{

String str = "123##456";
String[] infoStrings = str.split("##");
Log.w("TestService", str + "=>" + Integer.toString(infoStrings.length));
Assert.assertEquals(infoStrings.length, 2);
/**
* 这里返回的 infoStrings 为正确的 2
*/
}
}

"123$$456".split("$$")的结果长度为什么为1?为什么
...全文
224 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
javamy015 2013-08-06
  • 打赏
  • 举报
回复
谢谢,也就是说split 支持正则了?
螃蟹变异了 2013-08-06
  • 打赏
  • 举报
回复
引用 3 楼 javamy015 的回复:
$$ 为什么是特殊字符???
"$" 是Java正则表达式的行结束符号。如果要使它为普通字符,必须进行转义("\\$")
javamy015 2013-08-06
  • 打赏
  • 举报
回复
$$ 为什么是特殊字符???
aotian16 2013-08-06
  • 打赏
  • 举报
回复
引用 1 楼 guoyoulei520 的回复:
String[] infoStrings = str.split("\\$\\$"); 
给分吧
这分便宜,哈哈
凉凉二点凉 2013-08-06
  • 打赏
  • 举报
回复
String[] infoStrings = str.split("\\$\\$"); 
给分吧

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧