java可以解析含有不同分隔符的字符串吗急

时间:2008-06-05 13:55:05   来源:论坛整理  作者:  编辑:chinaitzhe
我想问一下,java能解析含有不同分隔符的字符串吗?比如我的字符串是这样的:1:1=ds,1=er,只想要得到除了:,=之外的字符串,该怎么做?谢谢!
网友回复:怎么没人回呢?知道的告诉一下,谢谢了!
网友回复:用正则表达式和字符串分割都可以啊.
你这里用Split最简单
String[] str = ":1:1=ds,1=er".split("::,=");
这里的str数组中的就是你想要的
当然也可以使用StringTokenizer.效果一样
网友回复:这个貌似两种办法
1,逐个解析
2,用正则表达式一次性替换掉后解析

网友回复:String[] str = ":1:1=ds,1=er".split("::,=");
这个方法貌似不行,我试过了,解析不出来.我没做过字符串解析的东西,不知道还能怎么做.正则表达式该怎么做啊?谢谢,小女生做程序开发好难啊,很多东西都不知道!
网友回复:String str = "1:1=ds,1=er";
// 记住,一定要让str = str.replaceAll,具体原因你可以看看源码
str = str.replaceAll("[:=,]", "");
System.out.println(str);
网友回复:你要的结果是什么 字符串11ds1er 还是字符串数组 1 1 ds 1 er
网友回复:我要字符串数组,谢谢!
网友回复:不要意思,我开始告诉你的那个方法是在有个Apache的commons-lang以后用的.
因为Split支持正则表达,所以
String[] strs = ":1:1=ds,1=er".split("[::,=]"); 就好了
网友回复:replace 和split都可以.
网友回复:
Java code





Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/





String str="1:1=ds,1=er";

System.out.println(Arrays.toString(str.split(":|=|,")));




网友回复:哦,我试一下,小女在这里谢谢大家,嘿嘿!
网友回复:可以了,谢谢大家!
网友回复:
Java code





Code highlighting produced by Actipro CodeHighlighter (freeware)

http://www.CodeHighlighter.com/





        //要去掉特定字符的字符串

        String str1 = "1:1=ds,1=er";

        Pattern p = Pattern.compile(":|,|=");

        Matcher m = p.matcher(str1);

        System.out.println(m.replaceAll(""));

        

        

        //去掉特定字符且分隔成数组

        String str2 = "1:1=ds,1=er";

        String[] strs = str2.split(":|,|=");

        

        for(String s: strs)

        {

            System.out.println(s);

        }




网友回复:String[] str = ":1:1=ds,1=er".split("=");
for (int i=0;i <str.length;i ){
String[] s=str[i].split(":");
}
先断大分类,再断小分类
这样的方法很麻烦且不效率,推荐正则
网友回复:
引用 13 楼 craky 的回复:
Java code
//要去掉特定字符的字符串
String str1 = "1:1=ds,1=er";
Pattern p = Pattern.compile(": ¦, ¦=");
Matcher m = p.matcher(str1);
System.out.println(m.replaceAll(""));


//去掉特定字符且分隔成数组
String str2 = "1:1=ds,1=er";
String[] strs = str2.split(": ¦, ¦=");

for(String s: strs)


顶个..........
网友回复:谢谢大家,可以了,呵呵!
网友回复:看,MM在这里是很受欢迎的.哈哈
网友回复:呵呵,恩,谢谢大家这么给我面子!
网友回复:String.split("[:,=]");
或者
String.split(": ¦, ¦=");

这样都可以 分割了。
网友回复:恩,是可以了,谢谢!
网友回复:欢迎常来,结贴给分吧
网友回复:怎么结啊,我不知道怎么结,也不知道怎么给分!
网友回复:在你帖子最上面,有个结贴子去.
网友回复:没找到,在哪里?
网友回复:最上面,你开始提问的上一行中就有
"我要提问","帖子加分","结贴子去...",
网友回复:
引用 5 楼 No_End_Point 的回复:
String str = "1:1=ds,1=er";
// 记住,一定要让str = str.replaceAll,具体原因你可以看看源码
str = str.replaceAll("[:=,]", "");
System.out.println(str);


这个似乎不错!
网友回复:知道了,谢谢楼上!
关键字:java,解析,含有,不同,分隔,字符串,

文章评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面