zoukankan      html  css  js  c++  java
  • 计算字符串尾部空格长度

    如下面一串字符串:

    DECLARE @str NVARCHAR(MAX) = N'Insus.NET           '

    为了计算得到字符串尾的空格长度,得先了解2个函数,LEN()和REVERSE(),

    LEN()函数返回文本字段中值的长度,这个函数,它包含字符串头部所有空格长度,但不包含字符串尾部所有空格。

    另一个函数REVERSE()是将整个字符进行反转,'abcdef' --> 'fedcba'。

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    
    -- =============================================
    -- Author:      Insus.NET
    -- Create date: 2019-05-25
    -- Update date: 2019-05-25
    -- Description: 获取字符串尾部空格长度
    -- =============================================
    CREATE FUNCTION [dbo].[svf_SpaceCharacterLenthOfStringSuffix]
    ( 
        @string NVARCHAR(MAX) 
    )
    RETURNS INT
    AS
    BEGIN    
        DECLARE @ltrim_str NVARCHAR(MAX) = LTRIM(@string)
        RETURN LEN(REVERSE(@ltrim_str)) - LEN(@ltrim_str)
    END
    Source Code

    扩展方法,如查想计算字符串的长度包含字符串尾部所有空格长度:

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    
    -- =============================================
    -- Author:      Insus.NET
    -- Create date: 2019-05-25
    -- Update date: 2019-05-25
    -- Description: 获取字符串长度包含头尾所有空格长度
    -- =============================================
    CREATE FUNCTION [dbo].[svf_StringLength]
    ( 
        @string NVARCHAR(MAX) 
    )
    RETURNS INT
    AS
    BEGIN    
        DECLARE @ltrim_str NVARCHAR(MAX) = LTRIM(@string)
        RETURN LEN(@string) + LEN(REVERSE(@ltrim_str)) - LEN(@ltrim_str)
    END
    Source Code

    把上面的字符串头部再添加几个空格

    DECLARE @str NVARCHAR(MAX) = N'     Insus.NET           '

  • 相关阅读:
    简单的生成编号的存储过程
    表实体上面添加特性获取到连接字符串
    Spring 静态注入讲解(MethodInvokingFactoryBean)
    嵌套的SQL另外一种写法
    微信小程序之列表下拉加载更多
    微信小程序之--->轮播图制作
    javascript变量作用域
    struts2升级报ActionContextCleanUp<<is deprecated。Please use the new filters
    java日期加减
    数字转大写
  • 原文地址:https://www.cnblogs.com/insus/p/10923726.html
Copyright © 2011-2022 走看看