【发布时间】:2010-12-13 17:20:40
【问题描述】:
我知道another question 非常相似,但由于某种原因我仍然遇到问题。
我有一个 GC 日志,我正在尝试修剪包含在 [] 中的 Tenured 部分。
63.544: [GC 63.544: [DefNew: 575K->63K(576K), 0.0017902 secs]63.546: [Tenured: 1416K->1065K(1536K), 0.0492621 secs] 1922K->1065K(2112K), 0.0513331 secs]
我申请s/\[Tenured:.*\]//
令人期待的是,结果被贪婪地修剪到该行的其余部分:
63.544: [GC 63.544: [DefNew: 575K->63K(576K), 0.0017902 secs]63.546:
所以让我们尝试不贪心 not 将右括号与s/\[Tenured:[^\]]*\]// 匹配,但遗憾的是没有匹配,sed 跳过该行,产生相同的原始输出:
63.544: [GC 63.544: [DefNew: 575K->63K(576K), 0.0017902 secs]63.546: [Tenured: 1416K->1065K(1536K), 0.0492621 secs] 1922K->1065K(2112K), 0.0513331 secs]
我如何非贪婪地匹配和替换该部分?谢谢,
【问题讨论】:
标签: regex unix replace sed garbage-collection