2014-06-18 26 views
5

Ben bir dize var ve TWIG Bir dizenin ilk kelimesini nasıl alabilirim?

  • ilk kelimenin
    olmadan style1 ve
  • ekranlı style2ile dize kalanını şekillendirme için ilk kelimeyi izole etmek istiyorum. Böyle

şey:

<span class="style1">{{ string|firstword() }}</span> 
<span class="style2">{{ string|restofstring() }}</span> 

mümkün mü? Şimdiden teşekkür ederim.

+0

sen dize keser ve ayrı bütün bu çıkmasında –

cevap

12

Bunu buldum!split() ve attribute() TWIG işlevleri.

{% set array = article.titre|split(' ', 2) %} 
<span class="style1">{{ attribute(array, 0) }}</span><!-- First word --> 
<span class="style2">{{ attribute(array, 1) }}</span><!-- Rest of string --> 

Bana fikirlerin başlangıcını veren Anjana Silva'ya teşekkürler.

+0

Benim zevkim @AntoineSubit :) –

10

Twig'de split komutunu kullanarak bunu başarabileceğine inanıyorum. Bölmek için, iki kelimeyi ayırıcıyı tanımlamanız gerekir. Sözlerin bir boşluk kullanılarak ayrıldığını varsayalım. Öyleyse bu gibi ilk ve ikinci kelimeleri alabilirsiniz.

{{ "Monday Tuesday" | split(' ')[0] }} 

bölünmüş hakkında "Salı"

Daha döndürür "Pazartesi"

{{ "Monday Tuesday" | split(' ')[1] }} 

döndürür: - http://twig.sensiolabs.org/doc/filters/split.html

Umut bu, Şerefe yardımcı olur!

+0

Bu çözüm için alt dize uzay sonra ilk oluşumu arar ve uzatma http://symfony.com/doc/current/cookbook/templating/twig_extension.html yazabilirsiniz cümlenin sözleri ama ben sadece ilk kelimeyi ve geri kalanını ilk kelimeyi hariç tutuyorum. –

İlgili konular