短信字符串分拆

短信拆分规则JAVA代码 拆分规则如下: 1、不超过70字按照一条短信计费 2、超过70字即为长短信,按67字/条分隔成多条计费 立即下载

分拆短信中的数据

/*--问题描述
根据自定义信息前缀表(每个信息前缀可以看作是一个信息分隔符)进行字符串分拆处理的函数,在分拆处理函数中,首先定义了一个信息前缘表@splits,表中包含了AC、BC、CC、DC四个信息前缀(实际使用时,可以在函数中添加其他信息前缘,也可以定义一个正式表来保存信息前缀数据,这样就可以实现用户自定义信息前缀数据的处理)。它的分拆处理过程是这样的:
    (1) 在短信字符串中,每个信息都是以指定的信息前缀开头,后面紧跟该前缀包含的信息,所以首先获取短信字符串中,第一个信息前缀字符串及它的长度,如果短信字符串不是以某个信息前缀开头,则说明不是一个正确的短信字符串,直接返回空的结果集。
    (2) 获取第一个信息前缀后的第一个信息前缀位置。
    (3) 如果该信息前缀不存在,则表明是最后一段信息,将该段信息插入结果集并且退出函数。
    (4) 如果该信息前缀存在,则通过该位置截取当前信息段,将截取的信息段保存到结果集,然后从短信字符串中删除已经分拆的信息段,循环从(1)开始处理,直到分拆完所有的信息。

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_splitSTR]') and xtype in (N'FN', N'IF', N'TF'))
drop function [dbo].[f_splitSTR]
GO
/*--字符串分函数
    根据自定义分隔符列表,分拆指定分隔符的的字符串,返回结果表
--邹建 2005.04(引用请保留此信息)--*/
/*--调用示例
    SELECT * FROM f_splitSTR(N'AC中国BC898CC美国人日本人DC中8c饿饭')
--*/
CREATE FUNCTION f_splitSTR(@s varchar(8000))
RETURNS @re TABLE(split varchar(10),value varchar(100))
AS
BEGIN
    DECLARE @splits TABLE(split varchar(10),splitlen as LEN(split))
    INSERT @splits(split)
    SELECT 'AC' UNION ALL
    SELECT 'BC' UNION ALL
    SELECT 'CC' UNION ALL
    SELECT 'DC'
    DECLARE @pos1 int,@pos2 int,@split varchar(10),@splitlen int
    SELECT TOP 1
    @pos1=1,@split=split,@splitlen=splitlen
    FROM @splits
    WHERE @s LIKE split+'%'
    WHILE @pos1>0
    BEGIN
        SELECT TOP 1
            @pos2=CHARINDEX(split,@s,@splitlen+1)
        FROM @splits
        WHERE CHARINDEX(split,@s,@splitlen+1)>0
        ORDER BY CHARINDEX(split,@s,@splitlen+1)
        IF @@ROWCOUNT=0
        BEGIN
            INSERT @re VALUES(@split,STUFF(@s,1,@splitlen,''))
            RETURN
        END
        ELSE
        BEGIN
            INSERT @re VALUES(@split,SUBSTRING(@s,@splitlen+1,@pos2-@splitlen-1))
            SELECT TOP 1
                @pos1=1,@split=split,@splitlen=splitlen,@s=STUFF(@s,1,@pos2-1,'')
            FROM @splits
            WHERE STUFF(@s,1,@pos2-1,'') LIKE split+'%'
        END
    END
    RETURN
END
GO

原帖地址



Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=348321


cmpp3 长短信拆分 为长短信获取短信内容 增加TP_udhi协议头 3. * 1.系统设置为发送短短信时直接获取短信实体的短信内容。TP_udhi=0 4. * 2.系统设置为发送长短信时按照长短信协议分段在每段前增加udhiHead。TP_udhi=1 5. * 3.系统采用7个字节的TP_udhi协议头(2字节短信标志,2的32次方内的随机数,但也有可能产生相同标志) 立即下载

相关推荐

关于分拆短信问题

NULL 博文链接:https://liwen19840617.iteye.com/blog/1901408

短信长度计算规则

1、一条短信是根据什么规则拆分两条的呢? 手机短信的长度是由编码决定的,根据国际标准, 如果发送纯英文字符,由于英文ASCII采用 7位编码,所以1120位的限额可以传送1120÷7=160个字符。 每条短信最多发送1120位,合(1120÷8=140 一个字节占8位)140字节的内容,每个汉字占用2个字节140/2=70; 一旦传送的字符中包含中文、日文、韩文等双字节字符,不论中文还是西文,不...

lisheng19870305的专栏 5729

Oracle MCP Server实战:自然语言如何重塑数据库交互体验

本文深入探讨了Oracle MCP Server如何通过自然语言交互技术革新数据库操作体验。作为Oracle数据库的革命性工具,MCP Server集成了先进的Text-to-SQL技术,允许用户使用自然语言直接查询数据库,大幅降低使用门槛。文章详细介绍了从环境搭建、实战案例到企业级部署的全流程,特别强调了中文自然语言处理能力和安全最佳实践,为DBA和开发者提供了从传统SQL到智能交互的转型指南。

u9v0w的博客 283

长短信拆分

长短信简介   1、引言     根据短信内容的大小,将常用短信分类:单条短信和长短信。所谓长短信是指短信的大小超过了单条短信的限制,需将短信拆分成几条短信然后分别发送,接收的时候将几条短信拼在一起组成原始短信的内容,对于拆分后每条短信的长度有一定的限制与单条短信有区别。单条短信不需要拆分,就可以发送。对于单条短息和长短信的标准,下面会一一讲解。 2、标准 2.1 单条短信    单条

ceko_wu的专栏 8788

本地部署DeepSeek连接MATLAB:打造私有化AI编程助手全攻略

大型语言模型(LLM)通过理解自然语言生成代码、解释技术概念,其核心原理是基于海量数据训练的Transformer架构。这项技术为工程计算和数据分析带来了效率革命,尤其在代码生成、调试辅助和文档自动化等场景价值显著。开源模型如DeepSeek-coder凭借优秀的代码理解能力,结合Ollama提供的本地化部署方案,实现了完全离线、低延迟的私有化部署。通过配置国内镜像加速下载,并利用MATLAB内置的HTTP通信函数构造API请求,工程师可以在熟悉的MATLAB环境中直接调用本地模型,处理数据清洗、算法验证等

weixin_30239339的博客 517

基于MATLAB的基本数字调制解调系统的设计

基于MATLAB的基本数字调制解调系统的设计一、摘要现代通信系统要求通信距离远、通信容量大、传输质量好,作为其关键技术之一的调制解调技术一直是人们研究的一个重要方向。本文以MATLAB为软件平台,充分利用其提供的通信工具箱和信号处理工具箱中的模块,对数字调制解调系统进行Simulink设计仿真,并且进行误差分析。调制与解调是通信系统中十分重要的一个环节,针对不同的信道环境选择不同的调制与解调方式可...

m0_55395440的博客 5549

短信分条

短信分割 编码 GBK

河之堤 1929

智能硬件产品:做好一款电子硬件产品,工具必不可少

上到战略规划,中至运营策略,下至人性洞察,。最初做产品时,笔者从一开始就陷入到了对工具的痴迷,包括:PS、AutoCAD、PROE、犀牛、Axure、Keyshot、Altium……大概将 2 个多月的时间和精力都消耗在了学习使用工具上。通过工具的运用也确实提高了工作效率,在仅有创意的前提下通过灵活运用工具,一年内便成功申请了多个实用新型专利、设计了多款产品的高保真原型图等。正在上传…重新上传取消。

产品线负责人 1442
上一篇: 作业中使用外部数据源时发生的错误
下一篇: 根据当月数据库自动生成下个月数据库--2
mengtech
博客等级 码龄19年 44粉丝 3472原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值