用Wordpress做下载站,需要复制网盘链接到后台的文章发布自定义字段,然后我不想每次手动拆分链接和提取码分别到两个input,就想在后台粘帖时候实现拆分它。
$link = '链接:https://pan.baidu.com/s/16y9Z5mTSE6gewStGDNndNQ
提取码:65nk
复制这段内容后打开百度网盘手机App,操作更方便哦';$regex_link = '/(?<=链接:)[^\s]+/'; // 匹配"链接:"后面的非空白字符
$regex_code = '/(?<=提取码:)\w+/'; // 匹配"提取码:"后面的字母数字字符if (preg_match($regex_link, $link, $match_link) &&preg_match($regex_code, $link, $match_code)) {echo "链接:{$match_link[0]}<br>";echo "提取码:{$match_code[0]}";} else {echo "没有找到链接或提取码。";
}
当然,这是笔记,不是教程。我只是简单的实现一下思路。具体应用到网站上,还需要完善代码。
下面贴一下JS 用截取字符串 用分解百度云盘分享链接的提取码和链接的方法:
$(document).ready(function(){
// 百度网盘链接分解 var baiduStr = document.getElementById("baiduyun").value;if (baiduStr!=''){ var baidutxtLen = baiduStr.length; var baiduUrl_start = baiduStr.indexOf("http"); var baiduUrl_end = baiduStr.indexOf("提取码"); var baidupwd_start = baiduUrl_end + 4; var baidupwd_end = baidupwd_start + 4; var baiduUrl = baiduStr.slice(baiduUrl_start,baiduUrl_end); var baiduPwd = baiduStr.slice(baidupwd_start,baidupwd_end);document.getElementById('baiduUrl').href = baiduUrl;document.getElementById("baiduPwd").innerHTML = baiduPwd;document.getElementById("copy_baiduPwd").innerHTML = "点击复制百度提取码:"+baiduPwd;}else{document.getElementById("copy_baiduPwd").style.display = "none";document.getElementById("baiduUrl").style.display="none"; }
}
第二种方法是在前端获取数据后实现的拆分。