我正在尝试创建一个过滤器,我正在寻找下划线的第一个(或最后一个)出现(或者它可以是任何字符),然后从那里开始寻找第5个字符。
我正在思考一些事情,无论是右边还是左边的char指数选择一边开始。真的试图找到一个很好的解释,为什么你的答案是以这种方式写的。
示例:我正在寻找__poptarts _________。
所以我希望它从最左边开始_并在那之后搜索第五个字符(p)。
答案 0 :(得分:1)
您可以同时使用SUBSTRING
和CHARINDEX
SELECT SUBSTRING (string,(CHARINDEX('_',string,0)+1),5)
在你的情况下:
SELECT SUBSTRING ('I am looking for __poptarts_________',(CHARINDEX('_','I am looking for __poptarts_________',0)+1),5)
结果是_popt
,因为你放了两个' _'在' p'