我的表中存储了一个方程式。我一次获取一个方程,并想用任何其他字符替换所有运算符。
输入字符串: (N_100-(6858)*(6858)*N_100/0_2)%N_35
运算符或模式: (+, -, *, /, %, (, ))
替换字符: ~
输出字符串: ~N_100~~6858~~~6858~~N_100~0_2~~N_35
我曾尝试使用嵌套替换函数进行以下查询,并且得到了所需的输出:
DECLARE @NEWSTRING VARCHAR(100)
SET @NEWSTRING = '(N_100-(6858)*(6858)*N_100/0_2)%N_35' ;
SELECT @NEWSTRING = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(
@NEWSTRING, '+', '~'), '-', '~'), '*', '~'), '/', '~')
, '%', '~'), '(', '~'), ')', '~')
PRINT @NEWSTRING
输出: ~N_100~~6858~~~6858~~N_100~0_2~~N_35
如何在不使用嵌套替换函数的情况下替换所有运算符?