我不知道这个问题还没有被有意义地问到。如何在SQL中创建等效函数,例如仅在字符串的开头或结尾处为回车LTRIM或RTRIM换行而创建等价函数。
LTRIM
RTRIM
显然REPLACE(REPLACE(@MyString,char(10),''),char(13),'')删除所有回车和换行符。这不是我想要的。我只想删除前导或尾随的。
REPLACE(REPLACE(@MyString,char(10),''),char(13),'')
查找 不是 CHAR(13)或的第一个字符,CHAR(10)并从字符串的长度中减去其位置。
CHAR(13)
CHAR(10)
LTRIM()
SELECT RIGHT(@MyString,LEN(@MyString)-PATINDEX('%[^'+CHAR(13)+CHAR(10)+']%',@MyString)+1)
RTRIM()
SELECT LEFT(@MyString,LEN(@MyString)-PATINDEX('%[^'+CHAR(13)+CHAR(10)+']%',REVERSE(@MyString))+1)