| 子程序名 | 返回值类型 | 公开 | 备 注 | ||||
| 网址_取所有参数 | 整数型 | 取出指定网址中所有的键名和键值,返回取到的数量。 | |||||
| 参数名 | 类 型 | 参考 | 可空 | 数组 | 备 注 | ||
| 参_网址 | 文本型 | 参_名称 | 文本型 | 返回名称;如:http://www.baidu.com/nihao?id=123456&name=hello,其中nihao就是名称 | 参_键名数组 | 文本型 | 参_键值数组 | 文本型 |
| 变量名 | 类 型 | 静态 | 数组 | 备 注 | ||
| 局_临时url | 文本型 | |||||
| 局_最后位置 | 整数型 | |||||
| 局_参数文本 | 文本型 | |||||
| 局_返回位置1 | 整数型 | |||||
| 局_起始位置1 | 整数型 | |||||
| 局_返回位置2 | 整数型 | |||||
| 局_参数名 | 文本型 | |||||
| 局_返回位置3 | 整数型 | |||||
| 局_参数值 | 文本型 | |||||
局_临时url = 参_网址
局_最后位置 = 寻找文本 (局_临时url, “?”, , 假) ' 针对url中参数部分包含url,会导致解析最后一个url,所以要从第一个?位置开始寻找
判断 (局_最后位置 = -1)
局_最后位置 = 倒找文本 (局_临时url, “/”, , 假)
局_最后位置 = 倒找文本 (局_临时url, “/”, 局_最后位置, 假) ' 通常url参数部分都是从最后一个/符号开始的
局_参数文本 = 取文本右边 (局_临时url, 取文本长度 (局_临时url) - 局_最后位置)
局_返回位置1 = 寻找文本 (局_参数文本, “?”, , 假)
判断 (局_返回位置1 ≠ -1)
参_名称 = 取文本左边 (局_参数文本, 局_返回位置1 - 1)
参_名称 = “”
' 替换掉第一次出现的?符号,部分url第一个参数是用?号开始的
局_参数文本 = 子文本替换 (局_参数文本, “?”, “&”, , 1, 真)
清除数组 (参_键名数组)
清除数组 (参_键值数组)
判断循环首 (真)
' 寻找参数名,&和=直接的就是参数名
局_返回位置1 = 寻找文本 (局_参数文本, “&”, 局_起始位置1, 假)
如果真 (局_返回位置1 = -1)
跳出循环 ()

局_返回位置2 = 寻找文本 (局_参数文本, “=”, 局_返回位置1, 假)
如果真 (局_返回位置2 = -1)
跳出循环 ()

' 如果寻找到&和?就取出两个符号之间的参数名
局_参数名 = 取文本中间 (局_参数文本, 局_返回位置1 + 1, 局_返回位置2 - 局_返回位置1 - 1)
加入成员 (参_键名数组, 局_参数名)
' 寻找参数值,从上一次的=号位置开始寻找&号,中间的内容就是参数值了
局_返回位置3 = 寻找文本 (局_参数文本, “&”, 局_返回位置2, 假)
判断 (局_返回位置3 = -1) ' 如果找不到&符号,表示到url尾部了,取出尾部所有内容即可
局_参数值 = 取文本右边 (局_参数文本, 取文本长度 (局_参数文本) - 局_返回位置2)
局_参数值 = 取文本中间 (局_参数文本, 局_返回位置2 + 1, 局_返回位置3 - 局_返回位置2 - 1)
加入成员 (参_键值数组, 局_参数值)
' 最后一次找到的=符号的位置要赋值给起始位置
局_起始位置1 = 局_返回位置2
判断循环尾 ()返回 (取数组成员数 (参_键名数组))
词条作者信息 使用例程
