inşaat bu tür maç nasıl?

2 Cevap php

aşağıdaki gibi im ayrıştırma ve ben maç ve daha sonra boş yapmak istiyorum metin tür yapıyor: -

<tr class="label-BGC"><td colspan="4">any kind of text here</td></tr>

i "<tr class="label-BGC"><td colspan="4">any text</td></tr>" içeren her satırı maç istiyorum

Burada kendi akşam ve beynim pil tamamen aşağı

ne yapmaya çalıştığını im: -

$patterns='<td colspan="4">'.stristr($parsed,'[^a-z0-9_- $]').'</td></tr>';
$replacements=' ';
$parsed = str_replace($patterns, $replacements, $parsed);

$ Çözümlü ayrıştırma im tüm verileri içeren bir.

Benim kod herkes burada bazı önerileri ile bana yardımcı olabilir çalışmıyor!

2 Cevap

Bu gibi basit bir şey deneyin:

$parsed = preg_replace('{<tr class="label-BGC"><td colspan="4">.*?</td></tr>}', 
                      $replacements, $parsed);

. herhangi bir karakterle eşleşir, * o 0-çok maç yapan ve? açgözlü -i.e. olmaktan durur Bu son muhtemel bir ilk dizisi durdurmak ve değildir.

Aşağıdaki deneyin:

preg_replace("`\s*<tr\s+class\s*=\s*"label-BGC"\s*>\s*<td\s+colspan\s*=\s*"4"\s*>.*?</td\s*>\s*</tr\s*>\s*`i", "", $content);

Bütün \s eşleme biraz overkill olabilir, ama bu giriş bir kullanıcıdan gelen ise çok bağışlayıcıdır.

Aksi takdirde, muhtemelen sadece kurtulabiliriz

preg_replace("`<tr class="label-BGC"><td colspan="4">.*?</td></tr>`i", "", $content);