SQL通配符替换-标记之间的单个字符?

SQL通配符替换-标记之间的单个字符?,sql,sql-server,tsql,Sql,Sql Server,Tsql,我有一个包含HTML的varcharmax列,我需要在换行符之间替换一个字符-例如:8。问题是,这个字符是完全随机的,所以我需要相当于%的通配符替换。我只需要它发生在单个字符的情况下,而不是多个字符的情况下 所以如果我想把它改成 有什么办法可以做到这一点吗?函数/视图/存储过程任何方法都可以 谢谢您可以尝试使用“替换”。虽然不是SQL server方面的专家,但它通常可以替代TextToSearch、PatrentFind和newpattern 目前还不清楚是否还有其他文本需要保留。如果有,您可

我有一个包含HTML的varcharmax列,我需要在换行符之间替换一个字符-例如:8。问题是,这个字符是完全随机的,所以我需要相当于%的通配符替换。我只需要它发生在单个字符的情况下,而不是多个字符的情况下

所以如果我想把它改成

有什么办法可以做到这一点吗?函数/视图/存储过程任何方法都可以

谢谢

您可以尝试使用“替换”。虽然不是SQL server方面的专家,但它通常可以替代TextToSearch、PatrentFind和newpattern

目前还不清楚是否还有其他文本需要保留。如果有,您可能需要一些捕获组

您可以尝试使用replace。虽然不是SQL server方面的专家,但它通常可以替代TextToSearch、PatrentFind和newpattern

目前还不清楚是否还有其他文本需要保留。如果有,您可能需要一些捕获组

我将使用

Charindex-帮助您确定

Stuff-帮助您用空字符串替换字符

SELECT Stuff(strings, Charindex('<br>', strings) + 4, 1, '') as Result
FROM   (VALUES ('<br>8</br>'),
               ('<br>.</br>'),
               ('<br>#</br>'),
               ('<br>$</br>')) tc (strings) 
结果:

我将使用

Charindex-帮助您确定

Stuff-帮助您用空字符串替换字符

SELECT Stuff(strings, Charindex('<br>', strings) + 4, 1, '') as Result
FROM   (VALUES ('<br>8</br>'),
               ('<br>.</br>'),
               ('<br>#</br>'),
               ('<br>$</br>')) tc (strings) 
结果:


你试过regex吗?还是替换?你试过正则表达式吗?还是替换?@SkipFeeney-可以出现在输入中?如果是这样,则仍将删除一个字符并导致/br>。如果存在此类数据,则我们将通过大小写进行处理statement@SkipFeeney-是否可以显示在输入中?如果是这样,则仍将删除一个字符并导致/br>。如果存在此类数据,则我们将通过CASE语句进行处理
Result
------
<br></br>
<br></br>
<br></br>
<br></br>