2013-06-21 4 views
0

CMS 데이터베이스를 정리하려고합니다. 모든 내용이 인라인 스타일이며 필 요가 있습니다.특정 경우에 정규 표현식 패턴이 작동하지 않습니다.

나는 중첩 된 태그가 많아 <h3> (나는 타이틀이 중첩되지 않았 음을 확신한다)으로 바꾸고 다른 태그를 정리할 것입니다.

나는 <h3><span> 태그를 대체하기 위해이 줄을 쓰기 :

$string = preg_replace('/<span style="line-height: 17pt; font-family: helvetica; color: rgb\(85, 85, 85\); font-size: 13pt; font-weight: bold;">(.*?)<\/span>/', '<h3>$1</h3>',$string); 

그것은이에 대한 exept 모든 상황에서 작동합니다.

<span style="line-height: 17pt; font-family: helvetica; color: rgb(85, 85, 85); font-size: 13pt; font-weight: bold;">"Rischio obsolescenza" per i lettori Blu-ray</span> 

아마 "텍스트에 문제가 있습니다

어떻게 해결할 수 있습니까?

답변

1

아니요, 따옴표는 문제가 아니며 정규식은 내 테스트에서 일치합니다. /s 수정자를 사용하지 않으면 점이 일치하지 않으므로 중간에 개행 문자가없는 것이 확실합니다. 시도해주세요.

$string = preg_replace('/<span style="line-height: 17pt; font-family: helvetica; color: rgb\(85, 85, 85\); font-size: 13pt; font-weight: bold;">(.*?)<\/span>/s', '<h3>$1</h3>',$string); 
관련 문제