[javascript] 텍스트에서 공백을 모두 제거하십시오.

$("#topNav" + $("#breadCrumb2nd").text().replace(" ", "")).addClass("current");

이것은 내 코드의 스 니펫입니다. 다른 ID의 텍스트 속성을 얻은 후 ID에 클래스를 추가하고 싶습니다. 이 문제는 내가 필요한 텍스트를 보유한 ID이며 글자 사이에 공백이 있습니다.

공백을 제거하고 싶습니다. 나는 시도 TRIM()하고 REPLACE()있지만, 이것은 부분적으로 만 작동합니다. 는 REPLACE()단지 1 공간을 제거합니다.



답변

정규식을 반복하려면 replace ()에 지시해야합니다.

.replace(/ /g,'')

g의 문자는 전체 문자열을 통해 검색을 반복하는 것을 의미합니다. 이것과 JavaScript 에서 사용할 수있는 다른 RegEx 수정 자에 대해서는 여기를 참조하십시오 .

리터럴 공백 문자뿐만 아니라 모든 공백을 일치 시키려면 \s대신 다음을 사용하십시오 .

.replace(/\s/g,'')


답변

.replace(/\s+/, "") 

첫 번째 공백 만 대체합니다. 여기에는 공백, 탭 및 줄 바꿈이 포함됩니다.

문자열의 모든 공백을 바꾸려면 전역 모드를 사용해야합니다

.replace(/\s/g, "")


답변

String.prototype.replace다른 답변에서 언급했듯이 정규식과 함께 사용 하는 것이 가장 좋은 해결책입니다.

그러나 재미를 위해 String.prototype.splitand 를 사용하여 텍스트에서 모든 공백을 제거 할 수도 있습니다 String.prototype.join.

const text = ' a b    c d e   f g   ';
const newText = text.split(/\s/).join('');

console.log(newText); // prints abcdefg


답변