得到指定字符串列表中,指定个数的字符串

原创 2004年07月29日 13:00:00

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_split]') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].[f_split]
GO

/*--得到字符串列表指定位置的字符
 
 可以自定义字符串列表的分隔符
 如果取数位置超出的范围,返回空字符串

--邹建 2004.07(引用请保留此信息)--*/

/*--调用示例

 --测试数据
 declare @t table(FITEM varchar(100))
 insert @t select '100.120.10' 
 union all select '20.140.10'
 union all select '150.124.150.10'
 
 --查询
 select fitem1=dbo.f_split(fitem,1,'.')
  ,fitem2=dbo.f_split(fitem,2,'.')
  ,fitem3=dbo.f_split(fitem,3,'.')
  ,fitem4=dbo.f_split(fitem,4,'.')
 from @t
--*/
create function f_split(
@s varchar(8000),  --字符串列表
@pos int, --取数位置
@splitchar varchar(10) --分隔符
)returns varchar(8000)
as
begin
 declare @i int,@ilen int

 select @i=charindex(@splitchar,@s),@ilen=len(@splitchar)
 while @i>0 and @pos>1
  select @s=substring(@s,@i+@ilen,8000)
   ,@i=charindex(@splitchar,@s)
   ,@pos=@pos-1
 return(case @pos when 1
   then case when @i>0 then left(@s,@i-1) else @s end
   else '' end)
end
go

 

查询字符串中某指定字符的个数

思想: 将原字符串中要统计的字符替换成空,这样字符串就“瘦身”了,然后拿原字符串的长度跟瘦身后的字符串长度相减,出来的就是要统计的字符的个数了~ 举个栗子: 统计下text中“0”的...
  • weixin_39415084
  • weixin_39415084
  • 2017年07月27日 09:56
  • 8676

得到指定字符串列表中,指定个数的字符串

if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[f_split]) and xtype in (NFN, NI...
  • zjcxc
  • zjcxc
  • 2004年07月29日 13:00
  • 2744

查找以指定字符开始和结尾的子串数量

【算法设计与分析基础3.2-9】 在一段给定的文本中查找以A开始,以B结尾的子串的数量(例如,在CABAAXBYA中有4个这样的子串)。 【算法】 以字符‘B’结尾的子串的个数等于字符‘B'左侧...
  • jjjcainiao
  • jjjcainiao
  • 2014年04月24日 20:18
  • 1428

得到指定字符串列表中,指定个数的字符串

  • zgqtxwd
  • zgqtxwd
  • 2008年04月27日 09:15
  • 123

得到指定字符串列表中,指定个数的字符串

if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[f_split]) and xtype in (NFN, NI...
  • chenzhiya
  • chenzhiya
  • 2008年01月03日 15:22
  • 139

字符串函数

二、字符串函数一般形式为:select function_name(arguments)拼接二进制或字符表达式:select (expression+expression+………)当拼接非字符、非二进...
  • yjq8116
  • yjq8116
  • 2004年09月03日 16:32
  • 2470

MySQL选出指定数量的字符SUBSTRING_INDEX

SELECT最后两个字符 RIGHT() 和LEFT()可以从列中选出指定数量的字符。 文本值以及有CHAR或VARCHAR类型的列中存储的值都被称为字符串。SELECT RIGHT(locati...
  • Vincentlmeng
  • Vincentlmeng
  • 2017年04月20日 16:55
  • 503

获取字符串中字母出现的个数

import java.util.*; /* 练习: "sdfgzxcvasdfxcvdf"获取该字符串中的字母出现的次数。 希望打印结果:a(1)c(2)...... 通过结果发现:每...
  • u012369373
  • u012369373
  • 2015年11月22日 16:48
  • 911

将字符串中指定的字符替换成指定字符

/*******************************************************************************  函数名称 :ReplaceCharW...
  • flyxx
  • flyxx
  • 2006年11月28日 13:49
  • 1402

修改select2插件让其可以根据输入数据类型决定从几个字符开始发送请求

In the beginning,我要说,我对select2不熟。只是工作中用到所以草草的看了看它的文档。 直奔主题,工作中需要根据用户的名字或手机号来搜索用户,同时因为用户数太多,不能用户的每次的...
  • Chinese521
  • Chinese521
  • 2016年08月25日 17:25
  • 1212
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:得到指定字符串列表中,指定个数的字符串
举报原因:
原因补充:

(最多只允许输入30个字)