vue项目接口域名动态的获取方法
388
2022-10-26
获取URL最后一个 ‘/’ 之后的字符
在开发项目的过程中,经常遇到需要解析论坛,博客等的URL的问题,比如:'abc/def/jkl' 或 'abc/def/jkl/',获取最后一个‘/’之后的所有字符‘jkl’,由于特殊字符'/'的个数不固定,从前向后正向解析URL,有点困难,其实有更简单的方法,那就是逆向解析法。
逆向解析的思路非常简单,因为最后一个特殊字符'/'的位置不确定,变通一下,使用reverse函数,将最后一个特殊字符'/'转化为第一个特殊字符,获取第一个特殊字符'/'之前的所有字符。
Script1,用于不以 ‘\’结尾的URL
declare @ExpressionToSearch varchar(max)set @ExpressionToSearch='/eeabc/def/abc/jkl'--set @ExpressionToSearch='eeabc/def/abc/jkl'--select reverse(@ExpressionToSearch)select right(@ExpressionToSearch, iif(charindex('/',reverse(@ExpressionToSearch),1)=0, len(@ExpressionToSearch), charindex('/',reverse(@ExpressionToSearch),1)-1) )
script2,如果以'/'结尾,取最后两个‘/'字符之间的字符串,类似从字符串 'abc/def/jkl/' 中取‘jkl’
declare @ExpressionToSearch varchar(max)set @ExpressionToSearch='/eeabc/def/abc/jkl/'--set @ExpressionToSearch='eeabc/def/abc/jkl'--select reverse(@ExpressionToSearch)select left(StrToSearch,len(StrToSearch)-charindex('/',reverse(StrToSearch),1))from (select right(@ExpressionToSearch, iif(charindex('/',reverse(@ExpressionToSearch),2)=0, len(@ExpressionToSearch), charindex('/',reverse(@ExpressionToSearch),2)-1) ) )as T(StrToSearch)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~