我想做一些模板文件的多行字符串替换,但保留一个漂亮的压痕。
这里是模板的一个例子:
<TAG1>
<TAG2>
%REPLACETHIS%
</TAG2>
</TAG1>
现在,当我干脆用绳子像替换字符串%REPLACETHIS%
<REPLACEDSTRINGTAG1>
replacedstringtext
</REPLACEDSTRINGTAG1>
它看起来是这样的:
<TAG1>
<TAG2>
<REPLACEDSTRINGTAG1>
replacedstringtext
</REPLACEDSTRINGTAG1>
</TAG2>
</TAG1>
当它应该是这样的:
<TAG1>
<TAG2>
<REPLACEDSTRINGTAG1>
replacedstringtext
</REPLACEDSTRINGTAG1>
</TAG2>
</TAG1>
它会变得更加复杂,因为模板将是一个更大的模板,它应该被正确地缩进以及一部分。
我想在Perl来实现这一点,但基本上问题是在我认识的语言相同。
有没有人一个更好的主意,而不是只需更换行由行与跟踪当前的缩进深度的变量? 这是非常麻烦的,由于多层次的模板结构。
基本上,我需要的是一个简单的正则表达式,将不仅把替换字符串的第一行,在右边栏的替代品,而是把每行该列。 所以,如果%REPLACETHIS%是在第10栏,替换字符串中的所有行应在山坳10把......也许有一些棘手的内置魔术在Perl的正则表达式?