TIL 20220816 - 85번 (문자열 공백제거)

hoin_lee·2022년 8월 16일
0

TIL

목록 보기
50/236

오늘은 드디어 이력서에 들어갈 내용과 포트폴리오 정리가 대략적으로 끝이났다.
이제 피드백을 바탕으로 나만의 무기나 이력서 느낌을 추가하고 제거할 건 제거하며 진행해야 하는데 아직 신입이다보니 적을 것도 그렇게 많지 않다보니 그렇게 많이 바뀌거나 하진 않을 것 같다.
그러니! 내일부턴 javascript 강의를 시작 할 수가 있다! react도 같이 들어야지😋

뭔가 새로운 기술을 배운다는 것에 신이 나는 걸 보면 프론트 개발 직군으로 변경하길 잘한 것 같은 기분이 든다.
그리고 매일 풀고 있는 알고리즘 문제는 풀어가면 풀어 갈수록 재미도 점점 느껴지고 이게 풀이 없이 정답입니다!를 볼 때 느껴지는 성취감 이런 게 엄청 기분이 좋다.
그리고 풀이를 보고 풀 때도 아!! 하면서 알아가는 느낌도 좋고.. 점점 진성 개발자로 되어가는 중인가 싶기도 하고... 재미만 있으면 됐다.
그러면서 예전에 배웠지만 잊어먹고 다시 구글링해서 찾는 문법도 til에 정리할 수 있고 만족스럽다.
어제와 동일한 문자열 관련 문제였는데 하나씩 console로 찍어보지 않았으면 공백 관련해서 헤맬뻔 했다.

문자열 공백 제거

총 3가지가 있는데

  • trim()
  • replace()
  • split() , join()

trim()

String.trim()은 문자열의 공백을 제거한다.
일반적으로 사용했을 땐 문자열 왼쪽, 오른쪽 공백을 모두 제거

  • trimStart() : 문자열의 왼쪽 공백 제거
  • trimEnd() : 문자열의 오른쪽 공백 제거
let string = " Hello, World, Java "
console.log([string.trim()])
// [Hello, World, JavaScript]
console.log([string.trimStart()])
// [Hello, Wordl, JavaScript ]
console.log([string.trimEnd()])
// [ Hello, Wordl, JavaScript]

replace()

이는 어제 TIL에서도 있던 문법인데 정규 표현식을 이용하여 공백을 제거할 수 있다.

  • 문자열 왼쪽, 오른쪽 공백 모두 제거 : / /g는 문자열에서 모든 공백을 찾고 찾은 공백을''로 변환하여 제거
  • 문자열 왼쪽 공백 제거 : /^ +/ -> ^는 문자열의 시작을 의미하고, +는 1개 이상의 공백을 의미한다. 문자열의 왼쪽에 있는 공백만 찾는 정규 표현식
  • 문자열 오른쪽 공백 제거 : / +$/ -> $는 문자열의 끝을 의미하고, +는 1개 이상의 공백을 의미, 문자열의 오른쪽에 있는 공백만 찾는 정규 표현식
let string = " Hello, World, Java "
console.log([string.replace(/ /g, '')])
// [Hello,World,Java]
console.log([string.replace(/^ +/, '')])
// [Hello, World, Java ]
console.log([string.replace(/ +$/, '')])
// [ Hello, World, Java]

split()과 join()

split()과 join()으로 모든 공백을 제거할 수 있는데 split(' ')을 이용해 공백을 기준으로 문자열을 분리하고, join('')으로 분리된 문자열을 공백 없이 합친다.
이 과정에서 문자열의 공백은 모두 제거됨

let string = " Hello, World, Java "
console.log([string.split(' ').join('')])
//['Hello,World,Java']

정보 출처: (https://codechacha.com/ko/javascript-remove-spaces-in-string/)

오늘 한 일

  • 이력서 ,포트폴리오 정리 1차 완료 (피드백과 모의 면접 바탕으로 수정하면 됨)
  • 알고리즘 문제 풀기 (문자열 관련 문제!)
profile
https://mo-i-programmers.tistory.com/

0개의 댓글