/**
*
* @Title: replacePreTag
* @Description: 将自定义视频标签替换成void的
* @author 凯哥Java
* @param editContentStr
* @return
* @return Map
* @throws
*/
private Map replacePreTag(String editContentStr) {
Map map = new HashMap();
StringBuffer sbUrl = new StringBuffer();
String regStr = "
([\\s\\S]*?)";//
是自定义标签
String urlStr = "(http|https)://([\\s\\S]*?)";
Pattern r = Pattern.compile(regStr);
Pattern urlr = Pattern.compile(urlStr);
Matcher m = r.matcher(editContentStr);
List listBean = new ArrayList();
while(m.find()){
Matcher mUrl = urlr.matcher( m.group(0));
if(mUrl.find()){
String url = mUrl.group(0);
listBean.add(new VoidBean(0,0,url.substring(0, url.length()-2),m.group(0)));
}
}
String mm ="";
if(null != listBean && listBean.size()>0){
for (int i = 0; i < listBean.size(); i++) {
StringBuffer sbCv = new StringBuffer();
VoidBean vBean = listBean.get(i);
String sn = vBean.getNewStr();
if(i== listBean.size()-1){
sbUrl.append(sn);
}else{
sbUrl.append(sn);
sbUrl.append(",");
}
if("http:/".equals(sn.substring(0, 6))){
String st = sn.substring(7, sn.length());
String yuming = sn.substring(7, st.indexOf("/")+7);
mm= yuming.substring(yuming.indexOf('.')+1,yuming.lastIndexOf('.'));
}else if("https:".equals(sn.substring(0, 6))){
String st = sn.substring(8, sn.length());
String yuming = sn.substring(8, st.indexOf("/")+8);
mm= yuming.substring(yuming.indexOf('.')+1,yuming.lastIndexOf('.'));
}
// System.err.println(mm);
//进行视频地址处理
if("qq".equals(mm)){//腾讯视频的
String vid = "";
if(sn.indexOf("?vid=")>0){//https://v.qq.com/x/cover/1t9erwhksw1w712.html?vid=w0022c2qlrm
vid = sn.substring(sn.indexOf("?vid=")+5);
}else {
vid = sn.substring(sn.lastIndexOf('/')+1,sn.length()-5);
}
/* sbCv.append("
sbCv.append(vid);
sbCv.append("&auto=0\"");
sbCv.append("allowFullScreen=\"true\" quality=\"high\" width=\"480\" height=\"400\" align=\"middle\" ");
sbCv.append("allowScriptAccess=\"always\" type=\"application/x-shockwave-flash\">
");*/
sbCv.append("
sbCv.append("src=\"http://v.qq.com/iframe/player.html?vid=");
sbCv.append(vid);
// sbCv.append("&width=500&height=375&auto=0\" allowfullscreen=\"\" frameborder=\"0\" height=\"375\" width=\"500\">
");sbCv.append("&auto=0\" allowfullscreen=\"\" frameborder=\"0\">
");StringBuilder sbs = new StringBuilder(editContentStr);
String preStr = vBean.getOldStr();
String url = preStr.substring(0,preStr.length()-2);
int length = editContentStr.indexOf(url);//因为是从开始计数,所以加1
int end = length+url.length()+2;//取得结束位置
//进行替换
if(-1!=length){
sbs.replace(length, end, sbCv.toString());
}
editContentStr= sbs.toString();
if(i==listBean.size()-1){
map.put("true", "true");
map.put("msg", "");
map.put("urlList", sbUrl.toString());
map.put("editContentStr", editContentStr);
}
}else if("youku".equals(mm)){//优酷
String vid = sn.substring(sn.indexOf("id_")+3, sn.indexOf(".html"));
sbCv.append("
sbCv.append(vid);
// sbCv.append("/v.swf\" quality=\"high\" width=\"480\" height=\"400\" ");
sbCv.append("/v.swf\" quality=\"high\" ");
sbCv.append("align=\"middle\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\">
");StringBuilder sbs = new StringBuilder(editContentStr);
String preStr = vBean.getOldStr();
String url = preStr.substring(0,preStr.length()-2);
int length = editContentStr.indexOf(url);//因为是从开始计数,所以加1
int end = length+url.length()+2;//取得结束位置
//进行替换
if(-1 != length){
sbs.replace(length, end, sbCv.toString());
}
editContentStr= sbs.toString();
if(i==listBean.size()-1){
map.put("true", "true");
map.put("msg", "");
map.put("urlList", sbUrl.toString());
map.put("editContentStr", editContentStr);
}
}else{
map.put("true", "false");
map.put("msg", "请输入正确的腾讯视频地址或是优酷视频地址。");
map.put("urlList", "");
map.put("editContentStr", editContentStr);
}
}
}else{
map.put("true", "true");
map.put("msg", "");
map.put("urlList", "");
map.put("editContentStr", editContentStr);
}
return map;
// return editContentStr;
/**
*
*
String regStr = "
([\\s\\S]*?)";
String urlStr = "http://([\\s\\S]*?)";
Pattern r = Pattern.compile(regStr);
Pattern urlr = Pattern.compile(urlStr);
Matcher m = r.matcher(editContentStr);
List listBean = new ArrayList();
while(m.find()){
Matcher mUrl = urlr.matcher( m.group(0));
if(mUrl.find()){
String url = mUrl.group(0);
listBean.add(new VoidBean(0,0,url.substring(0, url.length()-2),m.group(0)));
}
//
}
for (int i = 0; i
StringBuilder sbs = new StringBuilder(editContentStr);
VoidBean bean = listBean.get(i);
String preStr = bean.getOldStr();
String url = preStr.substring(0,preStr.length()-2);
int length = editContentStr.indexOf(url);//因为是从开始计数,所以加1
int end = length+url.length()+2;//取得结束位置
// System.out.print("第"+i+"个。开始位置:"+length+", 结束位置:"+end);
// String newStr = "";
String newStr = "
//进行替换
//System.out.println( sbs.subSequence(length, end));
sbs.replace(length, end, newStr);
editContentStr= sbs.toString();
}
return editContentStr;
*/
}