정규식
[JS] 영어 첫글자만 대문자로 바꾸기
코드예제 See the Pen <a href="https://codepen.io/hyukson/pen/GRwjjqe"> Untitled</a> by hyukson (<a href="https://codepen.io/hyukson">@hyukson</a>) on <a href="https://codepen.io">CodePen</a>. 코드 function toCapitalize(str) { return str.replace(/\b\w/g, (match) => match.toUpperCase()); } // : 사용예시 toCapitalize('hello world'); // 'Hello World' 코드풀이 'ABC'.replace(/\b\..
[JS] 개인정보 마스킹 처리 (이름, 전화번호, 주민번호, 이메일, 계좌번호..)
정규식으로 마스킹하는 방법이 존재하지만, 익스플로러에서 호환성 문제로 동작하지 않는 이슈가 존재합니다. 이름 function maskingName(name) { if (name.length
[JS] 줄바꿈을 포함한 모든 문자 일치 정규식
문제점 단순히 모든문자(.) 정규식을 사용하면 문장이 개행 문자로 인해 하나로 묶이지 않고 개행을 기준으로 나뉘는 문제점이 발생합니다. 정규식에서 . 특수문자는 개행 문자를 제외한 모든 문자를 인식합니다. 하지만 모든 문자에 개행 문자를 포함시켜 인식을 해야 할 때가 존재합니다. 코드 const reg = /^(.|\n)*?$/ 문자에 모든 문자 또는 개행 문자를 찾을 수 있게 묶인 그룹으로 비교하는 정규식입니다. 현재 코드는 임시로 시작점(^)과 끝점($)을 지정해 제한하였습니다. 그 이유는 단순한 .* 정규식은 빈 항목을 판정하기 위해 무한한 판정을 하기 때문입니다. 결과 해당 정규식을 사용하면 개행을 기준으로 분리되었던 문장이 개행도 하나의 문장으로 인식, 묶인 모습을 볼 수 있습니다.
[JS] 정규식으로 모든 HTML 태그 제거하기
코드 const reg = /]*>?/g String.replace(/]*>?/g, ''); HTML 태그의 형식( )에서 에 싸여있는 태그를 모두 감지할 수 있는 정규식입니다. 해당 정규식을 사용하여 HTML 태그를 매치, 제거할 수 있습니다. 예시 가나다라 위와 같은 HTML 태그를 텍스트로 받아와 아래와 같은 코드로 태그를 제거해주면, 태그가 제거된 가나다라 텍스트만 남게 됩니다. // JavaScript const $el = document.querySelector(".box"); const newText = $el.innerHTML.replace(/]*>?/g, ''); console.log(newText);
[JS] 개행문자 제거하기
코드 // 줄바꿈 제거 str.replace(/\n/g, ""); // 엔터 제거 str.replace(/\r/g, ""); // 공백 제거 str.replace(/\s*/g, ""); // 개행문자 모두 제거 str.replace(/\n|\r|\s*/g, "");
[JS] 줄바꿈, 공백 제거하기
replace로 제거 const str = `aa bb cc dd ee ff`; // 줄바꿈 제거 str.replace(/\n/g, ""); // 공백 제거 str.replace(/\s*/g, ""); str.replaceAll(" ", ""); 개행 문자를 사용하여 제거하는 방법과 replaceAll 메서드를 이용하는 방법입니다. split 메서드로 제거 const str = `aa bb cc dd ee ff`; // 줄바꿈 제거 str.split("\n").join(""); // 공백 제거 str.split(" ").join(""); 줄 바꿈은 개행 문자 \n을 기준으로 자르는 방식을 사용했습니다.
[JS] 특수문자 제거 / 체크
모든 특수문자를 체크하는 정규식 const reg = /[^a-zA-Z0-9ㄱ-힣]/g; '가나$sW2^&d!_ㅎ^@'.replace(reg, ''); // '가나sW2dㅎ' [^]를 이용해서 위 조건들을 묶어 이와 반대되는 문자를 찾아내는 정규식입니다.. 숫자, 영어, 한글에 해당하지 않는 문자는 특수문자라고 가정을 하고 걸러주는 방식을 사용해봤습니다. 해당 정규식을 활용한 코드 See the Pen REGEX special string by hyukson (@hyukson) on CodePen.
[JS] 전화번호 자동 하이픈(-) 정규식
첫 번째 코드 const phone = '01012345678'; phone.replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`); // '010-1234-5678' 00-000-0000 또는 000-0000-0000 전화번호를 (2, 3) - (3, 4) - (4) 자리에 숫자 그룹을 지어 묶어줍니다. replace() 메서드로 각 그룹($1, $2, $3)을 순서대로 배치하고 사이에 하이픈을 추가시켜 하이픈이 추가된 전화번호를 완성시켜 줍니다. const phone = "010-12345678"; phone .replace(/[^0-9]/g, '') // 숫자를 제외한 모든 문자 제거 .replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-..