您的位置首页百科问答

码栈获取最后指定字符串最后一次出现的位置

码栈获取最后指定字符串最后一次出现的位置

码栈是做什么用的,这个就不用说了吧。在处理字符串的时候,发现码栈居然没有查找指定字符串最后一次出现的位置的函数,这里是自己写的不喜勿喷。

反转字符串的方法

;反转给定的字符串

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

然后是查找指定字符串在原字符串中的位置的函数

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

将以上两个函数同时放到代码编辑里面就可以使用了,如要取"//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"这个结果了