我有一个过程,实际上是将'#$#'替换为',包含'#$#'的值可以是,像这样:'AAA#$#DEFAEFGAA',没有定义长度。
但是真正需要的是只取#$#, 'DEFAEFGAA'之后的字符提前感谢那些花时间阅读并试图帮助我的人。关于
我已经尝试使用replace regexp_replace来替换从开始直到第二个'#'找到的任何东西,但我找不到像"(?= [^][a - z]) (?=[^][0-9])[^]+'">
,我也试图使用regexp_substr只接受#$#之后的字符,以防它们出现或不出现。
可以使用charindex和substring代替rexeg
with temp as (select 'AAA#$#DEFAEFGAA'::text as str)
select substring(str, charindex('#$#', str) + 3) as substr
from temp;
返回"DEFAEFGAA">