문법:
exec() : RegExpObject.exec(string) match() : stringObject.match(string) stringObject.match(regexp)
지식 포인트:
exec()는 RegExp 객체의 메소드이고, match()는 String 객체의 메소드입니다.
첫 번째 일치 항목에 대한 정보가 포함된 배열을 반환하거나, 일치 항목이 없으면 null을 반환합니다.
반환된 배열은 Array의 인스턴스이기는 하지만 index와 input이라는 두 가지 추가 속성을 포함합니다. 그 중 index는 문자열에서 일치하는 위치를 나타내고, input은 정규식이 적용되는 문자열을 나타낸다.
배열에서 첫 번째 항목은 전체 패턴과 일치하는 문자열이고, 다른 항목은 패턴의 캡처링 그룹과 일치하는 문자열입니다(패턴에 캡처링 그룹이 없는 경우 배열에는 하나의 항목만 포함됩니다).
테스트:
match() 테스트 코드:
var text = "mom and dad and baby"; var pattern = /(mom and )?(dad and )?baby/; var matches = text.match(pattern);//pattern.exec(text); console.log(matches.index); console.log(matches.input); console.log(matches[0]); console.log(matches[1]); console.log(matches[2]);
match() 테스트 결과 스크린샷:
exec() 테스트 코드:
var text = "mom and dad and baby"; var pattern = /(mom and )?(dad and )?baby/; var matches = pattern.exec(text);//text.match(pattern); console.log(matches.index); console.log(matches.input); console.log(matches[0]); console.log(matches[1]); console.log(matches[2]);
exec() 테스트 결과 스크린샷:
문자열 객체 메서드
方法 | 描述 |
exec | 检索字符串中指定的值。返回找到的值,并确定其位置 |
test | 检索字符串中指定的值。返回 true 或 false。 |
문자열 객체 메서드
方法
描述
match()
找到一个或多个正则表达式的匹配。
replace()
替换与正则表达式匹配的子串。
search()
检索与正则表达式相匹配的值。
JS에서 match()와 exec()의 반환 값과 속성 테스트에 대한 소개입니다.