문제

나는 구문 분석하고 내가 일치시키고 싶은 텍스트의 종류를하고 있고 그것을 null로 만드는 것은 다음과 같습니다.

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

포함 된 모든 라인과 일치하고 싶습니다 "<tr class="label-BGC"><td colspan="4">any text</td></tr>"

여기에서 저녁과 내 뇌 배터리는 완전히 무너졌습니다

내가하려고하는 것은 :-

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

$ PARSED는 구문 분석하는 전체 데이터를 포함합니다.

내 코드가 작동하지 않습니다. 누구나 여기서 몇 가지 제안을 도와 줄 수 있습니다 !!!

도움이 되었습니까?

해결책

다음과 같은 간단한 것을 시도하십시오.

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

. 어떤 캐릭터와 일치하고, *는 0-many와 일치하게 만듭니다. 욕심이 멈추지 않습니다.

다른 팁

다음을 시도하십시오.

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);

모든 \s 일치하는 것은 약간 과잉 일 수 있지만,이 입력이 사용자로부터 나오면 매우 용서합니다.

그렇지 않으면 아마 도망 갈 수 있습니다

preg_replace("`<tr class="label-BGC"><td colspan="4">.*?</td></tr>`i", "", $content);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top