Ben BBCode etiketleri dışarı atmak için normal bir ifade yazdım - sadece (daha sonra etiketleri olmadan dize uzunluğunu sayma için) izin verilen etiketleri şeritler.
Düzenli ifadeler gelince ben bir uzman değilim - bir saat kadar sonra ben bu hoş çok çalışma bulundu:
$pattern = "/\[\/?(i|b|u|url(.*?)|list|li)[\]\[]*\]/i";
$stripped = preg_replace($pattern, '', $text);
Ve 'url = http://someurl' gibi uzatılabilir özel etiket 'url' - Sadece izin verilen altı etiketleri (olması gerektiği ve daha fazla) şeritler.
Yani
in: [url=someurl]Lorem[/url] ipsum [test]dolor[/test] sit [b]amet[/b].
out: Lorem ipsum [test]dolor[/test] sit amet.
But the problem is, that it doesn't just strip out 'url=[sometext]' but also 'urlipsum'. I tried to add an '=' for parsing but couldn't get to the point.
Herkes nasıl = ile geldiğinde sadece url dışarı atmak için benim için bir ipucu var mı?