다음 HTML 문자열이 있습니다. 이 문자열에서 선행 및 후행 공백을 제거하는 JavaScript의 샘플 코드는 무엇입니까?
<p> </p>
<div> </div>
Trimming using JavaScript<br />
<br />
<br />
<br />
all leading and trailing white spaces
<p> </p>
<div> </div>
다음 HTML 문자열이 있습니다. 이 문자열에서 선행 및 후행 공백을 제거하는 JavaScript의 샘플 코드는 무엇입니까?
<p> </p>
<div> </div>
Trimming using JavaScript<br />
<br />
<br />
<br />
all leading and trailing white spaces
<p> </p>
<div> </div>
답변:
문자열 메소드를 참조하십시오-https trim()
: //developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/Trim
var myString = ' bunch of <br> string data with<p>trailing</p> and leading space ';
myString = myString.trim();
// or myString = String.trim(myString);
편집하다
다른 의견에서 언급했듯이 정규식 접근 방식을 사용할 수 있습니다. 이 trim
방법은 사실상 정규 표현식의 별명입니다.
if(!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g,'');
};
}
...이 방법은 풀의 얕은 쪽에서 여전히 수영하는 브라우저의 경우 기본 프로토 타입에 방법을 주입합니다.
br
"태그로 인한 줄 바꿈 제외"위에 주석을 추가했습니다 .
코드 파일과 같이 여러 줄 문자열로 작업하는 경우 :
<html>
<title>test</title>
<body>
<h1>test</h1>
</body>
</html>
이 결과를 얻으려면 모든 선행 줄을 바꾸고 싶습니다.
<html>
<title>test</title>
<body>
<h1>test</h1>
</body>
</html>
당신은 추가해야합니다 multiline
귀하의 정규식에 깃발을, ^
그리고 $
라인으로 라인을 일치 :
string.replace(/^\s+|\s+$/gm, '');
문서에서 관련 인용 :
"m"플래그는 여러 줄 입력 문자열을 여러 줄로 처리해야 함을 나타냅니다. 예를 들어, "m"을 사용하는 경우 "^"및 "$"는 전체 문자열의 시작 또는 끝에서만 일치하는 항목에서 문자열 내의 모든 줄의 시작 또는 끝으로 변경됩니다.
나는 이것이 매우 오래된 질문이라는 것을 알고 있지만 여전히 받아 들일만한 대답이 없습니다. "빈"HTML 태그와 html 문자열을 기반으로하는 공백 인 html 태그를 제거해야합니다.
찾고있는 출력에 대한 귀하의 의견을 기반으로 한 해결책을 생각해 냈습니다.
Trimming using JavaScript<br /><br /><br /><br />all leading and trailing white spaces
var str = "<p> </p><div> </div>Trimming using JavaScript<br /><br /><br /><br />all leading and trailing white spaces<p> </p><div> </div>";
console.log(str.trim().replace(/ /g, '').replace(/<[^\/>][^>]*><\/[^>]+>/g, ""));
.trim()
선행 및 후행 공백을 제거합니다
.replace(/ /g, '')
제거
.replace(/<[^\/>][^>]*><\/[^>]+>/g, ""));
빈 태그를 제거합니다
01). 선행 및 후행 공백 만 제거해야하는 경우 다음을 사용하십시오.
var address = " No.255 Colombo "
address.replace(/^[ ]+|[ ]+$/g,'');
문자열 "No.255 Colombo"를 반환합니다.
02). 공백을 모두 제거해야하는 경우 다음을 사용하십시오.
var address = " No.255 Colombo "
address.replace(/\s/g,"");
문자열 "No.255Colombo"를 반환합니다.