정규 표현 객체를 이용하면 패턴과 일치하는 문자열을 찾거나 치환한 문자열을 반환받을 수 있습니다. 형식은 다음과 같습니다.

var reg = /패턴/;

var reg = new RegExp(패턴);

var reg = new RegExp(패턴, 플러그);

정규 표현에는 다음 표의 메서드를 사용할 수 있습니다.

메서드 설 명
exec() 매치하는 단어를 찾으면 해당 문자를 반환, 아니면 null 을 반환
RegExp 메서드
Ex.) 패턴.exec(문자열);
test() 매치하는 단어가 찾으면 true를, 아니면 false
RegExp 메서드
Ex.) 패턴.exec(문자열);
match() 매치하는 단어를 찾으면 문자열로 구성된 배열을 반환, 아니면 null 을 반환
RegExp 메서드
Ex.) 문자열.match(패턴);
search() 매치하는 단어를 찾으면 찾은 문자의 인덱스를 반환, 아니면 -1 반환
String 메서드
Ex.) 문자열.search(패턴);
replace() 매치되는 문자열을 찾아 일부(또는 모든 문자)를 다른 문자열로 치환.
String 메서드
Ex.) 문자열.replace(패턴|단어, 새로운 문자열|콜백함수);
split() 정규식(또는 문자열)을 나누어 배열로 반환.
String 메서드
Ex.) 문자열.split(패턴);

다음은 주어진 문자열에서 영문자를 찾아 반환하는 예제입니다.

<script>
// 첫 번째 방법 
var reg = new RegExp("[a-z]+", 'i');
document.write( "하보니 PHP".match(reg) );
// PHP

// 두 번째 방법
var reg = /[a-z]+/i;
document.write( "하보니 PHP".match(reg) );
</script>


match()

매치되는 문자열을 찾으면 문자열로 구성된 배열로 반환합니다.

패턴.test(문자열);

<script>
var arr = "Habony PhP".match(/habony (\w+)/i);

document.write( arr );
// Habony PhP, PhP

document.write( arr[0] );
// Habony PhP

document.write( arr[1] );
// PhP
</script>


test()

찾는 문자열이 있으면 true 를 반환합니다.

패턴.test(문자열);

<script>
var str = 'Hello Habony 2019';
var reg = /[0-9]+$/;

if(reg.test(str) == true){
  document.write("매치하는 단어를 찾았습니다.");
}
</script>


search()

찾는 문자열이 있으면 찾은 문자의 위치를 인덱스로 반환합니다. 형식은 다음과 같습니다.

문자열.search(패턴)

<script>
document.write( "hello HabonyPHP".search(/[A-Z]/g) );
// 6

var str = 'The quick brown fox jumps over the lazy dog. If the dog barked, was it really lazy?';
var reg = /[^\w\s]/g;
document.write( str.search(reg) );
// 43
</script>


replace()

찾는 문자열이 있으면 일부 혹은 문자열 전체를 새로운 문자열로 치환하여 반환합니다. 형식은 다음과 같습니다.

문자열.replace(패턴, 교체할 문자열);

문자열.replace(찾을 문자열, 콜백함수);

<script>
var str = "하보니 좋은 날씨네요.";
document.write( str.replace(/하보니/i, '아이유') );
// 아이유 좋은 날씨네요.

var re = /apples/gi;
var str = 'Apples are round, and apples are juicy.';
document.write( str.replace(re, 'orange') );
// orange are round, and orange are juicy
</script>

0 댓글