2.JavaScript- regular expression

1 minute read

2.JavaScript- regular expression



1. 정규표현식 생성



<script type="text/javascript">

var pattern = /a/; // 정규표현식 리터럴 
var pattern2 = new RegExp('a') // 정규표현식 객체 생성자 

——————————————————


// 정규표현식 메소드 
console.log(pattern.exec('abcd')); // ['a'] 반환 
console.log(pattern.exec('bcd')); // nul 

var pattern3 = /a./; // '.'은문자 아무문자 1개를 의미
console.log(pattern3.exec('abcd')); // ['ab'] 반환 


console.log(pattern.test('abc')) // true 반환 
console.log(pattern.test('bcd')) // false 반환 - 존재유무 확인할때 

——————————————————


// 문자열 메소드 
console.log('abc'.match(pattern)); //['a'] 반환 

console.log('abc'.replace(pattern,'A')) // a -> A로 변환 


——————————————————



// 정규표현식 옵션 설정 
var xi = /a/;
console.log("Abc".match(xi)); // null 출력 
var oi = /a/i; // i를 붙히면 대소문자를 구분하지 않는다 
console.log("Abc".match(oi)); // ['A'] 출력 

var xg = /a/;
console.log("aac".match(xg)); // a가 두개지만 하나만 출력 
var og = /a/g; // 모든 결과 리턴 
console.log("aac".match(og)); // ['a','a']

var ig = /a/ig; // 대소문자 구분x + 모든문자 검색
console.log("Aaac".match(ig)); // ['A','a','a']



——————————————————

// 캡처 

// (\w+)\s(\w+) 
// https://regexper.com/#%28%5Cw%2B%29%5Cs%28%5Cw%2B%29%0A

// () 는 group을 의미 
// \w 는 A~Z a~z 를 의미 
// + 는 수량자, A = 해당, AA = 해당 
// \s 는 공백을 의미 


var pattern = /(\w+)\s(\w+)/;
var str = "coding everybody";
var result = str.replace(pattern, "$2, $1"); // $로 group의 순서를 바꿀수있다
console.log(result);

——————————————————

// 치환 
var urlPattern = /\b(?:https?):\/\/[a-z0-9-+&@#\/%?=~_|!:,.;]*/gim;
var content = '오픈 : http://opentutorials.org/course/1 입니다. 네이버 : http://naver.com 입니다. ';
var result = content.replace(urlPattern, function(url){
    return '<a href="'+url+'">'+url+'</a>';
});

console.log(result);




</script>





Leave a comment