2011-12-13 9 views
1

문자열에서 HTML 태그를 가져 오는 가장 좋은 방법은 무엇입니까?문자열에서 HTML 태그 가져 오기

나는 비디오가 포함 된 여러 embed 태그가있는 html 문자열이 있습니다. 이 내가 이런 일을 할 수있는 추측 HTML 문자열

에 포함 된 태그의 모든 숫자가 될 수 있지만 가장 좋은 방법이 될 수 없습니다 :

string embedSrc = propertyText.Substring(propertyText.IndexOf("<embed"), (propertyText.IndexOf ("</embed") - propertyText.IndexOf("<embed") + 8)); 

답변

2

쉽게 구문 분석 HtmlAgilityPack를 사용해보십시오. 그렇지 않다면 정규 표현식을 사용할 수 있습니다.

+0

감사하지만 프로젝트는 내 손에 넣어. 닷넷 2.0 및 HtmlAgilityPack 필요 3.5. – Andy

+0

@Andy, 내가 게시 한 링크에서 :'CodePlex에 게시 된 버전은 .NET Framework 2.0 용입니다. 이전 버전이 필요한 경우 이전 페이지로 이동하거나 메모를 남겨주세요. ' –

1

저는 C# api를 사용할 수 있다고 생각합니다. XmlDocument의 LoadXml (문자열) 메서드를 사용해보십시오. 그 후 객체 작업을 사용하여 내부 태그 또는 텍스트를 추출합니다. 살펴보기 XmlDocument from MSDN

+1

나는 이것을 시도했지만 HTML 문서에 여러 루트 요소가 있다는 오류가 발생합니다. – Andy

+0

만들기는 HTML이 잘 형성되어 슈어와 올바른 루트 태그 전달하는 것을 : 올바른 ' 텍스트 ' 잘못된 (이 슬로우 여러 뿌리를) 텍스트 다른 텍스트

1

세바스찬 (Sebastian)이 권리를 갖고 라이브러리를 찾고 HtmlAgilityPack은 훌륭한 옵션입니다. 문서 구조가 필요한 경우이 옵션이 가장 좋습니다.

정규 표현식을 사용한 구문 분석은 일반적으로 HTML의 경우 no-no로 간주됩니다. 그것은 정말로 당신이 입력 문자열을 읽으려고하는지에 달려 있습니다. 나는 그것을 끝내기 위해 lightweight xml/html parser using Regex를 썼다. 이것은 필요한 정규 표현식 패턴을 제공 할 수 있습니다.