-1

我觉得可能有比搜索字符串三遍寻找要替换的匹配项更有效的方法

str.replaceAll("_", " ").replaceFirst("^\\w*\\d{3}\\w*", "")
      .replaceAll("20\\d{2}", "")

以上是在一个for循环中逐行循环一个长字符串

  1. 全部 _(下划线)
  2. 包含超过 3 个数字并且是该行中的第一个单词的单词
  3. 日期 20** (2012,2013..)
4

1 回答 1

1

这不是完全相同的语法,但是如果您能够将三个正则表达式仅加入一个,例如“ (_)|(^\w*\d{3}\w*)|(20\d{2}) ”它可以更有效。

关键是尝试找到一个简单的表达式来只做一次。

于 2012-05-31T20:04:05.380 回答