Skip to content

Instantly share code, notes, and snippets.

@antaehyeon
Last active July 31, 2018 17:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save antaehyeon/d80d4b90225ce86c269f26bc1c65cc97 to your computer and use it in GitHub Desktop.
Save antaehyeon/d80d4b90225ce86c269f26bc1c65cc97 to your computer and use it in GitHub Desktop.
javascript regex
// Javascript Regex(정규표현식) 자주 사용하는 모음
// 숫자만 표현
const onlyNumber = /^[0-9]*$/;
// true? false?
console.log(onlyNumber.test("타겟문자열"));
// 숫자만 골라내기
const resultStr = targetString.replace(/[^0-9]/g,'');
console.log(resultStr);
// 특정 문자 카운트하기
var temp = "This is a string.";
var count = (temp.match(/is/g) || []).length; // '[' 는 '\[' 를 넣어주면 됨
alert(count);
// 숫자 3자리마다 콤마찍기
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
// 문자열에서 1 없애기 (응용)
'1101'.replace(/1/gi, ''); // 0
/*
JavaScript 정규표현식을 이해해보자!
TEST CASE (끝에 줄바꿈이 있다고 가정)
"Luke Skywarker 02-123-4567 luke@daum.net(/n)
다스베이더 070-9999-9999 darth_vader@gmail.com(/n)
princess leia 010 2454 3457 leia@gmail.com";(/n)
*/
/*
MODE : 숫자 하나씩
OUTPUT : [ '0','2','1','2','3','4','5','6','7' ...
*/
const regex = /\d/g
/*
MODE : 연속된(+) 숫자를 분할
OUTPUT : [ '02', '123', '4567', '070', '9999', '9999', '010', '2454', '3457' ]
*/
const regex = /\d+/g;
/*
MODE : 숫자 문자가 아닌 문자에 일치 (줄바꿈을 제거하진 않음)
OUTPUT : [ 'Luke Skywarker ',
'-',
'-',
' luke@daum.net\n다스베이더 ',
'-',
'-',
' darth_vader@gmail.com\nprincess leia ',
' ',
' ',
' leia@gmail.com' ]
*/
const regex = /\D+/g;
/*
MODE : 공백 문자가 아닌 연속된(+)
OUTPUT : [ 'Luke',
'Skywarker',
'02-123-4567',
'luke@daum.net',
'다스베이더',
'070-9999-9999',
'darth_vader@gmail.com',
'princess',
'leia',
'010',
'2454',
'3457',
'leia@gmail.com' ]
*/
const regex = /\S+/g;
/*
MODE : 밑줄 문자를 포함한 연속된 영숫자 문자에 일치 = [A-Za-z0-9_]
OUTPUT : ["Luke","Skywarker","02","123","4567","luke","daum","net","070","9999","9999","darth_vader","gmail","com","princess","leia","010","2454","3457","leia","gmail","com"]
*/
const regex = /\w+/g;
/*
MODE : 연속된 비 단어 문자에 일치 = [^A-Za-z0-9_]
OUTPUT : [" "," ","-","-"," ","@",".","\n다스베이더 ","-","-"," ","@",".","\n"," "," "," "," "," ","@","."]
*/
const regex = /\W+/g;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment