模板工具包在字符串中保留20个第一个字符

时间:2012-10-11 11:28:37

标签: regex template-toolkit

我试图从字符串中删除除前20个字符之外的所有内容。但正则表达式删除前20个并保留其余部分。我该如何解决这个问题?

这是我的代码:

[% p.name | remove('(.{20})', '$1') %]

我也试过这个:

[% p.name.replace('(.{20})', '$1')) %]

1 个答案:

答案 0 :(得分:2)

你的正则表达式与长度小于20的字符串不匹配。

使用:

[% p.name.replace('(?<=.{20}).*', '')) %]

或者:

[% p.name.replace('(.{0,20}).*', '$1')) %]