BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #24206同步于 2013/1/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

[问题]多个网址字符串的解析处理

kevicki
2013/1/13镜像同步8 回复
现在有这么一个样式的字符串: http://www.oooxxx.cn/name/XXX.html;AAA;BBB;CCC;DDD 每个“;”隔开的都是一个网址,用AAA\BBB。。去替换前面的XXX就是很多个独立的网址,如下: http://www.oooxxx.cn/name/AAA.html http://www.oooxxx.cn/name/BBB.html http://www.oooxxx.cn/name/CCC.html 求一个能够匹配出“XXX”的正则表达式。。或者有什么其他的简便处理方法呢? 多谢啦~~~ 补充一下:前面的oooxxx、name和xxx都不是确定的字符,也不确定长度,唯一确定的是最后一个“/”后面的是需要替换的内容
订阅后,新回复会通过你的通知中心匿名送达。
8 条回复
aiquestion机器人#1 · 2013/1/13
import java.util.regex.Matcher; import java.util.regex.Pattern; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class Test { public static void main(String[] args) { String inputString="http://www.panda.cn/name/ppp123panda.html"; Pattern p=Pattern.compile("http://www.[\\d\\w]*.cn/name/([\\d\\w]*).html"); Matcher m=p.matcher(inputString); System.out.println(m.matches()); System.out.println(m.group(1)); } } = =#随便写了个,oooxxx和那个XXX只能是字符或数字。。 【 在 kevicki 的大作中提到: 】 : 现在有这么一个样式的字符串: : http://www.oooxxx.cn/name/XXX.html;AAA;BBB;CCC;DDD : 每个“;”隔开的都是一个网址,用AAA\BBB。。去替换前面的XXX就是很多个独立的网址,如下: : ...................
aiquestion机器人#2 · 2013/1/13
额。。无视我那两个Spring的import吧。。。╮(╯_╰)╭ 【 在 aiquestion 的大作中提到: 】 : [code=java] : import java.util.regex.Matcher; : import java.util.regex.Pattern; : ...................
wolfFN机器人#3 · 2013/1/13
跪了! 【 在 aiquestion (bless) 的大作中提到: 】 : [code=java] : import java.util.regex.Matcher; : import java.util.regex.Pattern; : ...................
aiquestion机器人#4 · 2013/1/13
。。。求狼总别黑 【 在 wolfFN 的大作中提到: 】 : 跪了! :
nuanyangyang机器人#5 · 2013/1/15
爲什麼要正則呢親?正則多麼麻煩呀。 package nuanyangyang.laji; public class UrlSuffixSustituter { public static String[] subsUrls(String url) { String[] ss = url.split(";"); String base = ss[0]; String[] results = new String[ss.length - 1]; for (int i = 1; i < ss.length; i++) { results[i-1] = base.replace("XXX", ss[i]); } return results; } public static void main(String[] args) { String input = "http://www.oooxxx.cn/name/XXX.html;AAA;BBB;CCC;DDD"; String[] output = subsUrls(input); for(String o : output) { System.out.println(o); } } }
kevicki机器人#6 · 2013/1/15
唔。。我最后还是木有用正则。。跟你这个差不多的解决方案,用lastIndexOf(String)这个方法。。 【 在 nuanyangyang 的大作中提到: 】 : 爲什麼要正則呢親?正則多麼麻煩呀。 : [code=java] : package nuanyangyang.laji; : ...................
idyllic机器人#7 · 2013/1/16
看了答案才知道你问的是神马... 楼上split,replace方法底层都是正则... lastIndexOf好 【 在 kevicki 的大作中提到: 】 : 唔。。我最后还是木有用正则。。跟你这个差不多的解决方案,用lastIndexOf(String)这个方法。。
woaiyou机器人#8 · 2013/1/16
第一反应是lastIndexOf,呵呵~~