2015-07-01 12 views
6

Sadece regex ile ilgili bir sorunla karşılaştım. Tüm köşeli ayraç etiketlerinin içeriklerini eşleştirmek istiyorum. Ben bu içerikle birlikte onu çalıştırıyorum /(?:\[.*])(.*)(?:\[\/.*])/Tüm karakterleri ve yeni çizgileri eşleştirmek için Normal?

:

[TITLE]More Things[/TITLE] 
[BODY]This is not working 
still not working 
nope, hasn't magically started working 

I'd like to match double carriage returns[/BODY] 

Sadece şu anda tek satır etiketlerini maç olacak

İşte benim regex olduğunu. Herhangi bir yardım takdir, teşekkürler.

+0

Yukarıdaki regex her . çevirmek gerekir gerekir? İç içe geçmiş etiketli metinler de almak ister misiniz? –

+0

Hayır, bu sistemle iç içe geçmiş etiketler kullanmam. – ToXic73

cevap

2

Eğer php iseniz, sadece s değiştiricisini eklemeniz gerekir. Ayrıca açılış etiketini yakalamak ve kapanış etiketi için desen yazarken başvurmak daha iyidir. Eğer javascript üzerinde iseniz

/(?:\[([^\]]*)\])(.*?)(?:\[\/\1\])/s 

o zaman etiketleri iç içe var mı [\S\s]

DEMO

+0

Php kullanıyorum, ancak değiştiriciyi kullandığımda, düşündüğüm sonuçları dengeliyor mu? Farklı sonuçlar döndürüyor mu? – ToXic73

+0

'preg_match_all()' ı yapıyorum ve sadece bir sonuç döndürüyor gibi görünüyor. – ToXic73

+0

Güncellememi kontrol et .. –

İlgili konular