在正文数据中,为了给某段字串添加特殊标记,数据库中保存有如下各式的数据:
这是含有$r{标$b{签$u{的正}文}}
以下是一个利用正则,将$xxx{..}删除,只保留正文的代码。
其中使用了Jakarta Commons Lang的类库。
这是含有$r{标$b{签$u{的正}文}}
以下是一个利用正则,将$xxx{..}删除,只保留正文的代码。
其中使用了Jakarta Commons Lang的类库。
- public static String trimDecoration(String str) {
- if (StringUtils.isBlank(str)) {
- return str;
- }
- String target = str;
- Pattern pattern = Pattern.compile("//$[rbu]{1}//{{1}(.*?)//}{1}");
- Matcher matcher = pattern.matcher(target);
- while (matcher.find()) {
- target = StringUtils.replaceOnce(target, matcher.group(), matcher.group(1));
- }
- matcher = pattern.matcher(target);
- if (matcher.find()) {
- target = trimDecoration(target);
- }
- return target;
- }