PHP: düzenli ifade ile özel etiketleri bağlantıları Transform

1 Cevap php

Ben (veri ihracat için gerekli) özel bir biçime standart HTML kodu dönüştürmek için çalışan bir düzenli ifade almak için çalışıyorum.

Aşağıdaki kodu içinde Exemple:

<a href="toto.php">Toto
</a> bwahaha
<td width="49%" bgcolor="#FF9E39" style="padding-left: 10px; padding-top: 3px; padding-bottom: 3px; border-bottom: 5px solid rgb(255, 255, 255);" class="texteblanc">
<a href="nuit-orientation.php" class="texteblanc">[strong]Nuit de l'orientation[/strong]</a>
</td>

Ben aşağıdaki biçimde iki bağlantıları ayıklamak istiyorum:

[a:toto.php]Toto[/a]
[a:nuit-orientation.php][strong]Nuit de l'orientation[/strong][/a]

Ve tabii ki bağlantıları mevcut HTML kodundaki yerde tutulmalıdır istiyorum.

Yani, aşağıdaki kodu tryed:

$txt = preg_replace('/<a href="(([[:word:]]|[[:punct:]])+)"[^>]*>\n*(\r\n)*\r*(([[:print:]]|\r\n|\n)+)\n*(\r\n)*\r*<\/a>/i', '[a:${1}]${4}[/a]', $txt);

Bu ancak her zaman değil çalışır ...

Birisi böyle bir şey yapmak için nasıl bir fikrin var mı?

Teşekkürler,

Damien