2012-12-10 2 views
1

HTML 태그가있는 TEXT를 허용하는 MYSQL 테이블에 열이 있습니다. 이제 HTML img src 속성에 .png/.jpg가있는 모든 URL을 찾고 싶습니다.MYSQL 테이블에서 거대한 문자열 내부의 문자열을 찾는 방법은 무엇입니까?

:

테이블 이름 : mdl_course_sections; 열 이름 : 요약; 요약 데이터 형식 : TEXT

샘플 기록 :

Summary 
----------  
<table border="0"> 
<tbody> 
<tr> 
<td><img style="display: block; margin-left: auto; margin-right: auto;" src="http://xyz.au/abc.png" height="64" width="64" /></a></td> 
<td> Learn about video slideshows.</td> 
</tr> 
<tr> 
<td><img src="http://i1325.photobucket.com/albums/u630/teststudplane/plane-2.jpg" height="95" width="100" /></td> 
<td> Explore how video can reinvent education.</td> 
</tr> 
</table> 
+0

[정규식] (http://dev.mysql.com/doc/refman/5.1/en/regexp.html)의 MySQL 매뉴얼을 참조하십시오. – Kermit

+3

@njk, HTML + regex = [insanity] (http://stackoverflow.com/a/1732454/168868). 하지마. – Charles

답변

2

는이 내부 SQL 자체를 할 투쟁 할 것입니다. 시도하지 마라. 결국 머리카락을 꺼내게 될 것이다.

대신 각 항목을 검토하고 HTML 파서를 사용하여 각 img 태그의 src 속성을 추출하고 거기에서 처리하십시오.

DOMDocument 클래스에 내장 된 loadHTML 메서드가 도움이 될 수 있지만 잘못 구성된 HTML에는 다소 민감 할 수 있습니다. 또한 Simple HTML DOM과 같은 것을 시도해 볼 수 있습니다. CSS 스타일의 선택기를 사용할 수 있습니다. jQuery의 작동 방식과 비슷합니다.

관련 문제