【发布时间】:2016-03-25 01:52:16
【问题描述】:
假设我们有以下字符串:
$6
$7
You have received the grade of $3 in the subject $1 ($10) in the semester $2 ($11).
Grade date: $4
Entered: $5
我需要弄清楚如何动态且正确地替换这些变量。假设我们有以下PL/SQL 伪代码:
for i in 1..X loop
l_str := regexp_replace(l_str, '\$'||to_char(i), l_replace(i));
end loop;
但是当涉及到第一次迭代时 - $1、$10、$11 变量正在被替换 - 但只有 $1 是正确的。
有没有人建议如何解决它?
【问题讨论】:
-
试试
l_str := regexp_replace(l_str, '\$[0-9]+\b','SOME_STRING'); -
它不是静态替换,我已经改变了例子,很抱歉让您感到困惑
标签: regex plsql regexp-replace