2012-10-11 65 views
4

我想從字符串中除去前20個字符的所有內容。但是正則表達式除去了前20個,並保留了其餘部分。我該如何解決這個問題?模板工具包保留20個字符串中的第一個字符串

這裏是我的代碼:

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

我也試過這樣:

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

回答

2

你的正則表達式不其長度小於20

使用字符串匹配:

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

或者:

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

這不替代任何東西... – Twistar

+1

@Twistar哦,是的,更換邏輯是不對的在第一。試試我的更新。 – xdazz

+0

非常感謝! – Twistar

相關問題