我想删除字符串中已知字符']'和表达式'[G56]'之间的字符串类型字符串'F250N'中的所有值表'T250'如何删除字符和表达式之间的字符串的值 - SQL Server
这也需要覆盖找不到前面的字符的情况,例如,在字符串的开头。
如:
SYSADMIN[G63]Z-GHQ[G62]Z-WE[G56]Z-MEX[G56]Z-NAZ[G56]Z-LAS[G56]Z-LAN[G56]Z-CEE[G56]Z-APAC[G56]Z-CAD[G56]
将成为:
SYSADMIN[G63]Z-GHQ[G62]
和:
LVN-CHNG[G62]LVN-READ[G56]LVN-FULL[G63]
将成为:
LVN-CHNG[G62]LVN-FULL[G63]
到目前为止,我已经试过类似:
update T250
set F250N = replace(F250N, '[G56]', '')
from T250
但是这并没有考虑到前面[G56]
字符串的一部分最后]
当你声明“一个已知的char']'”时,当以[G56]结尾的令牌是第一个时,边界情况如何? – dlatikay
您的期望输出比您的问题涉及更多。你的第二个例子不是在''''字符后面删除字符,而是在整个'[G62] LVN-'部分之后删除字符。请在这里更具体的规则。 – iamdave
在更长的示例中,所有剩余的“标记”以[G56]结尾,所以我们需要删除所有出现的事件,而不仅仅是第一个。 – dlatikay