오늘 나오다가 새끼 발가락을 찍었더니 너무 아팠지만~ 알고리즘 문제도 풀었고 JS문법도 연습했고
React 강의도 들었다.
한가지 아쉬웠던 건 react 강의 듣는데 과제 순서라 많이 진도를 못나간 게 아쉬웠다.
내일은 순서를 바꿔서 알고리즘 문제를 풀고 react강의 js문법 정리 순으로 해봐야 겠다.
알고리즘 문제 풀기(프로그래머스)
https://github.com/hoinlee-moi/algorithm_prac
오늘은 앞서 배우고 복습했던 문법들로 대부분 풀 수 있었다!
JS기본문법 다시 공부
https://github.com/hoinlee-moi/ModernJS
React 강의 듣기
알고리즘 풀면서 다시 문법 짚고 가기
replace()
어떤 패턴에 일치하는 일부 또는 모든 부분이 교체된 새로운 문자열을 반환.
그 패턴은 문자열이나 정규식이 될 수 있으며, 교체 문자열은 문자열이나 모든 매치에 대해서 호출된 함수일 수 있다.
const p = 'The quick brown fox jumps over the lazy dog. If the dog reacted, was it really lazy?';
console.log(p.replace('dog', 'monkey'));
// expected output: "The quick brown fox jumps over the lazy monkey. If the dog reacted, was it really lazy?"
const regex = /Dog/i;
console.log(p.replace(regex, 'ferret'));
// expected output: "The quick brown fox jumps over the lazy ferret. If the dog reacted, was it really lazy?"
var newStr = str.replace(regexp|substr, newSubstr|function)
구문으로
regexp(pattern)
정규식 또는 리터럴. 일치하는 항목은 newSubStr
또는 지정된 함수가 반환 한 값으로 대체
substr(pattern)
newSubStr
로 대체될 String. 정규식이 아닌 글자 그대로의 문자열로 처리된다. 오직 첫 번째 일치되는 문자열만이 교체
newSubStr (replacement)
첫번째 파라미터를 대신할 문자열(String). 여러가지 대체 패턴들이 지원
function (replacement)
주어진 regexp 또는 substr에 일치하는 요소를 대체하는 데 사용될 새 하위 문자열을 생성하기 위해 호출되는 함수.
let str = '1234JavaScript56789!!0';
let regex = /[^0-9]/g;
let result = str.replace(regex, "")
console.log(result) // 1234567890
[ regex = /[^0-9]/g; ] 에 대한 해석은 아래와 같다.
/[^0-9]/g : 0~9까지의 숫자(=모든숫자)
/[^0-9]/g : ^뒤에 나오는 패턴을 부정
/[^0-9]/g : 매칭된 패턴에 대한 전체 검색
repeat()
문자열을 주어진 횟수만큼 반복해 분인 새로운 문자열을 반환
count
문자열을 반복할 횟수. 0과 양의 무한대 사이의 정수([0, +∞)).
'abc'.repeat(-1); // RangeError
'abc'.repeat(0); // ''
'abc'.repeat(1); // 'abc'
'abc'.repeat(2); // 'abcabc'
'abc'.repeat(3.5); // 'abcabcabc' (count will be converted to integer)
'abc'.repeat(1/0); // RangeError
({ toString: () => 'abc', repeat: String.prototype.repeat }).repeat(2);
// 'abcabc' (repeat() is a generic method)