[英]TSQL, check if comman has space after it for string
我有一个字符串,我需要输入到函数中/这全是关于以Dow, John W
格式使用精确大小写的aka字母名称。 就我而言,我需要为函数使用逗号后的空格,而有些字符串没有它们,如何以最有效的方式做到这一点? 我试图用范围[]进行以下操作,但是它不起作用。 基本上,我想要逻辑:如果在逗号后没有空格,则插入空格,我不想触及函数本身,因为它是传统的东西。
DECLARE @inpstring VARCHAR(100) = 'DOW,JohN W'
SELECT Replace(@inpstring,'[A-Z],[A-Z]','[A-Z], [A-Z]')
-- s'be 'Dow, John W'
Tx M
假设只有一个,
可以使用字符串:
DECLARE @inpstring VARCHAR(100) = 'DOW,JohN W'
SELECT CASE
WHEN PATINDEX('%,[A-Z]%', @inpstring) > 0 THEN Replace(@inpstring,',',', ')
ELSE @inpstring
END
对于多个逗号:
DECLARE @inpstring VARCHAR(100) = 'A,B,C, D'
SELECT @inpstring =
CASE
WHEN PATINDEX('%,[A-Z]%', @inpstring) > 0
THEN REPLACE(Replace(@inpstring,',',', '), ', ', ', ')
ELSE @inpstring
END
PRINT(@inpstring);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.