【发布时间】:2021-07-25 19:47:53
【问题描述】:
我想用一个大字符串替换一个字符串,但我猜我的正则表达式不正确。所以它不起作用。
主字符串是
一些需要替换的sql部分
cond = emp.EMAIL_ID = 'xx@xx.com' AND
emp.PERMANENT_ADDR LIKE('%98n%')
AND hemp.EMPLOYEE_NAME = 'xxx' and is_active='Y'
要查找和替换的字符串是
根据某些条件sql部分被替换
hemp.EMPLOYEE_NAME = 'xxx'
我已经尝试过
Pattern 和 Matcher 类被使用和
Pattern pat1 = Pattern.compile("/^hemp.EMPLOYEE_NAME\\s=\\s\'\\w\'\\s[and|or]*/$", Pattern.CASE_INSENSITIVE);
Matcher mat = pat1.matcher(cond);
while (mat.find()) {
System.out.println("Match: " + mat.group());
cond = mat.replaceFirst("xx "+mat.group()+"x");
mat = pat1.matcher(cond);
}
它不起作用,根本没有进入循环。任何帮助表示赞赏。
【问题讨论】: