2011-04-13 1 views
0

나는 html 문자열을 가지고있다. -어떻게 효율적으로 동적 HTML 문자열의 부분에 따옴표 (또는 배치 기호) 바꾸기?

...style="background-position: left top; background-image: url("http://localhost/abc/{DYNAMIC CONTENT}") etc...

url("") 부분을 url("") 부분으로 바꾸려면 무엇이 빠르고 효율적인가? 스타일 뒤에 큰 따옴표가 있으면 필요 없다. 특정 장소에서 따옴표를 대체 할 수 있습니다. 감사합니다 .

+0

'{DYNAMIC CONTENT} '가 어떻게 삽입되는지 알고 있으면 좋을 것입니다. – Eliasdx

답변

1

를 사용하여 정규식 (이하 잘못된 반응에 대한 충분한 문맥과 일치) :..

$src = preg_replace(
      '#(style="[^"]+:\s*url) [(]" ([^"]+) "[)]#x', 
      "$1('$2')", 
      $src 
     ); 

인라인 style= 당 두 개의 큰 따옴표 " " 쌍만 바꿉니다. 따라서 잘못된 여러 속성/url ("..") 표현식을 예상 할 경우 소스를 통해 두 번 실행해야 할 수도 있습니다.

+0

올바른 방향 일 수는 있지만 예제가 작동하지 않습니다. 또한에 대한 설명을 찾을 수 없습니다 : symbol in regexp. 고마워, +1 대답. –

+0

정말요? 정확한 예제 HTML 스 니펫으로 테스트 해 보았습니다. -':'는 리터럴 콜론을 나타냅니다. 왜냐하면'url ('앞에 하나가 나와야하기 때문입니다 - http://codepad.org/QdhemmBY 테스트입니다.) – mario

+0

죄송합니다, 마리오, 오타가있었습니다. 내 편이 네 대답을 받아 들인다. –