문자열에서 HTML 태그를 제거하는 정규식
중복 가능성 :
HTML 태그를 제거하는 정규식
두 HTML 태그 사이에 값을 가져 오는 표현식이 있습니까?
이것을 감안할 때 :
<td class="played">0</td>
태그를 0
제거하여 반환 할 표현식을 찾고 <td>
있습니다.
정규식을 사용하여 HTML을 구문 분석하지 마십시오. HTML은 일반 언어가 아니므로 어떤 정규식도 일부 난해한 경우에 실패 할 수 있습니다. 자세한 내용은 이 질문에 대한 중요한 답변을 참조하십시오 . 대부분은 농담 형식이지만 매우 좋은 지적입니다.
다음 예제는 Java이지만 정규식은 다른 언어의 경우 동일하지는 않지만 비슷합니다.
String target = someString.replaceAll("<[^>]*>", "");
비 HTML에 <또는>가없고 입력 문자열이 올바르게 구조화되었다고 가정합니다.
특정 태그라는 것을 알고 있다면-예를 들어 텍스트에 <td>
태그 만 포함되어 있다는 것을 알고 있다면 다음과 같이 할 수 있습니다.
String target = someString.replaceAll("(?i)<td[^>]*>", "");
편집 : Ωmega는 다른 게시물에 대한 의견에서 여러 태그가 있으면 여러 결과가 모두 함께 뭉개 질 것이라는 좋은 점을 제기했습니다.
예를 들어 입력 문자열이 <td>Something</td><td>Another Thing</td>
이면 위의 결과는 SomethingAnother Thing
.
여러 태그가 예상되는 상황에서 다음과 같이 할 수 있습니다.
String target = someString.replaceAll("(?i)<td[^>]*>", " ").replaceAll("\\s+", " ").trim();
이것은 HTML을 단일 공백으로 바꾼 다음 공백을 축소 한 다음 끝 부분을 자릅니다.
사소한 접근 방식은
<[^>]*>
아무것도없이. 그러나 입력이 얼마나 잘못 구조화되었는지에 따라 실패 할 수 있습니다.
jsoup http://jsoup.org/로 할 수 있습니다.
Whitelist whitelist = Whitelist.none();
String cleanStr = Jsoup.clean(yourText, whitelist);
참고 URL : https://stackoverflow.com/questions/11229831/regular-expression-to-remove-html-tags-from-a-string
'code' 카테고리의 다른 글
필드가 null인지 비어 있는지 확인하는 방법 mysql? (0) | 2020.10.31 |
---|---|
'.'대체를 중지하도록 PHP를 가져옵니다. (0) | 2020.10.31 |
Android에서 프로그래밍 방식으로 ScreenSize를 얻는 방법 (0) | 2020.10.31 |
Django 나머지 프레임 워크 중첩 된 자체 참조 개체 (0) | 2020.10.31 |
Google Play 서비스를 버전 13으로 업데이트 한 후 오류가 발생했습니다. (0) | 2020.10.31 |