【发布时间】:2012-05-07 02:45:20
【问题描述】:
我有一个动态的长字符串。无论在哪里找到 % XXX %,我都必须获取 XXX 值并将其替换为其他值。会有多个 %XXX %。 如何获取 % % 内的值?
例如。
"POLICY_NO = %POLNO% and b.ACTION_TIME = (select max(ACTION_TIME) from POLICY_DETAILS where POLICY_NO = %POLICYID%)"
如何读取 2 % 之间的每个值?而且我必须将 POLNO 与一些会话变量(例如,POLNO=1234567,POLICYID=3)进行比较,如果匹配,那么我必须替换会话变量值。那么查询应该变成
“POLICY_NO = 1234567 and b.ACTION_TIME = (select max(ACTION_TIME) from POLICY_DETAILS where POLICY_NO = 3)”
【问题讨论】:
-
所以字符串中每个不同的“属性”都应该被替换成不同的值?是否预先知道所有可能的“属性”(即有 6 个可能的值)?
-
属性是可能的值,例如 POLNO、POLID.. 我必须先从 2 % 获取值。 Next 与 Map 键比较..如果找到则必须替换为特定键的 Map 值...
标签: java string replace find substring