在处理字符串的时候,发现码栈居然没有查找指定字符串最后一次出现的位置的函数,这里是自己写的不喜勿喷。
方法/步骤
1
反转字符串的方法
;反转给定的字符串
Func StrReverse($str)
;获取字符串长度
$length = J_String($str, "长度", "")
;定义用来盛放新字符串的变量
$nstr = ""
;反转字符串
for $i = $length to 1 step -1
$nstr = $nstr & J_String($str, "取子串", $i & "," & 1)
next
;返回结果
return $nstr
EndFunc
2
然后是查找指定字符串在原字符串中的位置的函数
Func lastIndexOf($str, $findstr)
;反转字符串
$nstr = StrReverse($str)
;获取字符串总长度
$length = J_String($str, "长度", "")
;获取指定字符串在反转后的字符串中的位置
$loc = J_String($nstr, "是否包含", $findstr)
;根据情况处理返回值
if $loc = 0 Then
Return 0
Else
return $length - $loc + 1
EndIf
EndFunc ;==>lastIndexOf
3
将以上两个函数同时放到代码编辑里面就可以使用了,如要取"//baidu.com/logo_demo1.jpg_1.jpg"中的前面部分的图片地址
$picAddress="//baidu.com/logo_demo1.jpg_1.jpg"
$picRealAddress=J_String($picAddress, "取左子串", lastIndexOf($picAddress, "_")-1)
就可以得到"//baidu.com/logo_demo1.jpg"这个结果了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。