JavaScript - 정규표현식 (2/7) : 패턴 만들기
정규표현식 객체 생성자 = 패턴 만들기
- / 와 /사이에 찾을 패턴을 넣는다.
- new RegExp('패턴') 으로 만든다.
JavaScript - 정규표현식 (3/7) : RegExp 객체의 정규 표현식
RegExp.exec()
- 패턴에 맞는 문자열이 0번째에 담긴 담긴 배열을 반환한다.
- [찾은문자열, index: 인덱스, input: 입력한문자열, groups: undefined];
- 매칭되는 문자열이 없으면 null을 반환한다.
var pattern = /a/;
console.log(pattern.exec('abcde'));
// ["a", index: 0, input: "abcde", groups: undefined]
## RegExp.test()
var pattern = /a/;
console.log(pattern.test('abcde')); // true
JavaScript - 정규표현식 (4/7) : String 객체의 정규 표현식
문자열.replace(찾는패턴, 바꿀문자열)
var str = 'abcde';
var pattern = /a/;
str.replace(pattern, 'A'); // "Abcde"
JavaScript - 정규표현식 (5/7) : 옵션
i
var xi = /a/; // 대소문자 구분
"Abcde".match(xi); // null
var oi = /a/i; // 대소문자 구분X
"Abcde".match(oi); // ["A", index: 0, input: "abcde", groups: undefined]
g
var xg = /a/;
'abcdea'.match(xg); // ["a", index: 0, input: "abcdea", groups: undefined]
var og = /a/g;
'abcdea'.match(og); // ["a", "a"]
var ig = /a/ig
"AabcdAa".match(ig) // ["A", "a", "A", "a"]
JavaScript - 정규표현식 (6/7) : 캡처
(\w+)\s(\w+)
var pattern = /(\w+)\s(\w+)/
var str = "coding everybody";
var result = str.replace(pattern, "$2, $1");
console.log(result); // everybody, coding
JavaScript - 정규표현식 (7/7) : 치환
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);
// 생활코딩 : <a href="http://opentutorials.org/course/1">http://opentutorials.org/course/1</a> 입니다. 네이버 : <a href="http://naver.com">http://naver.com</a> 입니다.