|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
代码如下:
- function Workbook_Open(){
- Application.MacroOptions("JSAWEBSERVICE","从Internet或Intranet上的Web服务返回数据。",undefined,undefined,undefined,undefined,14,undefined,undefined,undefined,["要调用的Web服务的URL","设置请求头"])
- Application.MacroOptions("JSAFILTERXML","从XML内容返回数组、位置、值。",undefined,undefined,undefined,undefined,14,undefined,undefined,undefined,[
- "有效XML格式的字符串。",
- "返回类型。\n\n1:返回数组;\n2:返回所需值在数组中的位置,需参数searchvalue_index_qms;\n3:返回所需值,需参数searchvalue_index_qms;\n4:返回包含所需值数组,需参数searchvalue_index_qms、hms;\n5:返回所需值,需参数searchvalue_index_qms、hms、index。",
- "所需值、位置、前面是。\n\nreturntypeof为2,为所需值;\nreturntypeof为3,为位置;\nreturntypeof为4,为前面是。",
- "后面是。",
- "位置。"
- ])
- }
- function JSAWEBSERVICE(url,referer){
- var obj = new XMLHttpRequest()
- obj.open("GET",url,false)
- obj.setRequestHeader("Referer",referer)
- obj.send()
- return obj.responseText
- }
- function JSAFILTERXML(xml,returntypeof,searchvalue_index_qms,hms,index){
- var arry = xml.split(/<[^<>]+>/g)
-
- if(returntypeof == 1){return arry} //返回数组。
-
- if(returntypeof == 2){return [...arry.entries()].filter(v=>v[1].includes(searchvalue_index_qms))} //返回所需值在数组中的位置,需参数searchvalue_index_qms。
- if(returntypeof == 3){return arry[searchvalue_index_qms]} //返回所需值,需参数searchvalue_index_qms。
-
- if(returntypeof == 4){ //返回包含所需值数组,需参数searchvalue_index_qms、hms。
- var pphb = []
- arry.forEach(v=>{
- var reg = RegExp("(?<=" + searchvalue_index_qms + ")" + ".*?" + "(?=" + hms + ")","gs")
- var ppsz = v.match(reg)
- if(ppsz != null){pphb = pphb.concat(ppsz)}
- })
- return [...pphb.entries()]
- }
- if(returntypeof == 5){ //返回所需值,需参数searchvalue_index_qms、hms、index。
- var pphb = []
- arry.forEach(v=>{
- var reg = RegExp("(?<=" + searchvalue_index_qms + ")" + ".*?" + "(?=" + hms + ")","gs")
- var ppsz = v.match(reg)
- if(ppsz != null){pphb = pphb.concat(ppsz)}
- })
- return pphb[index]
- }
- }
复制代码
|
评分
-
1
查看全部评分
-
|