html截取字符串中数字部分,获取字符串中截取第一个纯数字部分

由网上查找,根据工作需要进行修改

1.[代码][SQL]代码

/*

* 从字符创中截取数字部分,只截取第一个数字部分

* a2b3c4 只截取 2

*/

alter function dbo.f_GetNumInStr

(@Str varchar(200))

returns varchar(50)

as

begin

declare @Result varchar(50)

set @Result = ''

select @Str = LTRim(RTrim(@Str))

declare @i as int

declare @j as int

declare @k1 as int

declare @k2 as int

set @i = 1 --循环开始位置

set @j = len(@Str) --循环结束位置

set @k1 = 0 --记录数字开始的位置

set @k2 = 0 --记录数字结束的位置

while @i <= @j and isnull(@Result,'') = '' --在结束位置前,且未取到数字

begin

--判断当前位置是否为数字

if (substring(@Str , @i , 1) between '0' and '9') or (substring(@Str , @i , 1) = '.') or (substring(@Str , @i , 1) = '%')

or (substring(@Str , @i , 1) = '+') or (substring(@Str , @i , 1) = '-') --允许判断小数

begin

if @k1 = 0 --如果是第一次取到数字,即为数字开始位置

set @k1 = @i

if @i = @j --已循环到最后位置

begin

set @k2 = @j --最后位置是数字

set @Result = substring(@Str , @k1 , (@k2 - @k1 + 1)) --根据开始和结束位置获取数字

end

end

else --当前位置非数字部分

begin

if @k1 > 0 --如果已取到开始位置

begin

set @k2 = @i - 1 --上一个位置为数字部分结束

set @Result = substring(@Str , @k1 , (@k2 - @k1 + 1))

end

--取到非数字,一次取值结束,初始化数字位置

set @k1 = 0

set @k2 = 0

end

--向后一位取数

set @i = @i + 1

end

return @Result

end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
截取字符串的域名部分,我们可以使用一些字符串处理函数和正则表达式来完成。首先,我们需要识别字符串的域名部分。域名一般是由域名标识符和顶级域名组成,它们之间以点号分隔。 以下是一种可能的方法来截取域名部分: 1. 定义一个字符串变量,存储待截取字符串。 2. 使用字符串处理函数,比如find()或者index(),找到域名标识符的起始位置。 3. 使用同样的函数,找到域名标识符之后的点号的位置。 4. 使用切片操作,截取从域名标识符起始位置到点号位置之间的子字符串,即为域名部分。 5. 如果需要,再次重复步骤2至4来获取顶级域名部分。 以下是一个示例代码来截取字符串的域名部分: ``` # 定义待截取字符串 string = "www.example.com" # 找到域名标识符起始位置和点号的位置 start = string.find(".") end = string.find(".", start + 1) # 截取字符串的域名部分 domain = string[start + 1:end] print(domain) ``` 在这个例子,我们假设字符串是"www.example.com"。先找到第一个点号的位置,即域名标识符的起始位置。然后,再次使用find()函数来找到域名标识符之后的点号的位置。最后,使用切片操作截取从起始位置到点号位置之间的子字符串,即为域名部分。 请注意,这只是一个简单的示例代码,实际情况还需要考虑更多的因素,比如域名的格式和特殊情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值