阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 1650阅读
  • 1回复

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

级别: 新人
发帖
11
云币
22
在处理字符串的时候,发现码栈居然没有查找指定字符串最后一次出现的位置的函数,这里是己写的不喜勿喷。

方法/步骤
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"这个结果了
[ 此帖被水晶心泉在2017-02-19 23:57重新编辑 ]
本帖最近评分记录: 1 条评分 云币 +1
码栈 云币 +1 您的无私奉献精神值得我们学习!向您致敬! 2017-02-20
发帖
79
云币
128
只看该作者 沙发  发表于: 2017-02-20
您的无私奉献精神值得我们学习!向您致敬!
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
验证问题: 阿里云官网域名是什么? 正确答案:www.aliyun.com
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)