我有一个名为tester.txt的sedfile,其中包含此代码。
s/\(\\ref\s*\) \(\w*,\) \(``\(\w*\s*\)*,\) \(.*\)/\1 ll\2 ll\3 dd\4/
/^\ref{A-Za-z}*/p
当我在以下文本上运行这些命令时,我得到一些不正确的输出。我不明白为什么要重复“正确”部分。“。*”不应该与其余文本匹配吗?不知道为什么会这样。任何帮助,将不胜感激。
输出:
\ref llthis, ll``is hard af alright, ddalright
原文:
\ref this, ``is hard af alright, finally,
之内:
\(\\ref\s*\) \(\w*,\) \(``\(\w*\s*\)*,\) \(.*\)
只需计算您的捕获组:
1: \(\\ref\s*\)
2: \(\w*,\)
3: \(``\(\w*\s*\)*,\)
4: \(\w*\s*\)
5: \(.*\)
第4个(后来称为\4
)位于第3个(\3
)内,因此重复。您没有显示您实际期望获得的输出,所以这是一个猜测,但也许您想要:
\1 ll\2 ll\3 dd\5
代替:
\1 ll\2 ll\3 dd\4
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句