번역이 완료되지 않았습니다. Please help translate this article from English
search() 메서드는 정규 표현식과 이 String 객체간에 같은 것을 찾기
위한 검색을 실행한다.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
구문
str.search(regexp)
매개변수
regexp- 정규 표현식 객체. non-RegExp 객체
obj가 전달되면, 그것은new RegExp(obj)을 이용하여RegExp으로 암묵적으로 변환된다.
반환 값
정규표현식과 주어진 스트링간에 첫번째로 매치되는 것의 인덱스를 반환한다.
찾지 못하면 -1 를 반환한다.
설명
When you want to know whether a pattern is found and also its index in a string use search() (if you only want to know if it exists, use the similar test() method on the RegExp prototype, which returns a boolean); for more information (but slower execution) use match() (similar to the regular expression exec() method).
예
search()를 이용하기
The following example searches a string with 2 different regex objects to show a successful search (positive value) vs. an unsuccessful search (-1)
var str = "hey JudE"; var re = /[A-Z]/g; var re2 = /[.]/g; console.log(str.search(re)); // returns 4, which is the index of the first capital letter "J" console.log(str.search(re2)); // returns -1 cannot find '.' dot punctuation
사양
| 사양 | 상태 | 주석 |
|---|---|---|
| ECMAScript 3rd Edition (ECMA-262) | Standard | Initial definition. Implemented in JavaScript 1.2. |
| ECMAScript 5.1 (ECMA-262) The definition of 'String.prototype.search' in that specification. |
Standard | |
| ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'String.prototype.search' in that specification. |
Standard | |
| ECMAScript (ECMA-262) The definition of 'String.prototype.search' in that specification. |
Living Standard |
브라우저 호환성
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
search | Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | IE Full support 4 | Opera Full support 4 | Safari Full support 1 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox Android Full support 4 | Opera Android Full support 10.1 | Safari iOS Full support 1 | Samsung Internet Android Full support 1.0 | nodejs Full support 0.1.100 |
flags | Chrome No support No | Edge No support No | Firefox No support 1 — 49 | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android No support No | Firefox Android No support 4 — 49 | Opera Android No support No | Safari iOS No support No | Samsung Internet Android No support No | nodejs No support No |
Legend
- Full support
- Full support
- No support
- No support
- Non-standard. Expect poor cross-browser support.
- Non-standard. Expect poor cross-browser support.
- Deprecated. Not for use in new websites.
- Deprecated. Not for use in new websites.
Gecko-specific notes
flagswas a non standard second argument only available in Gecko : str.search(regexp, flags)- Prior to Gecko 8.0,
search()was implemented incorrectly; when it was called with no parameters or withundefined, it would match against the string 'undefined', instead of matching against the empty string. This is fixed; now'a'.search()and'a'.search(undefined)correctly return 0. - Starting with Gecko 39 (Firefox 39 / Thunderbird 39 / SeaMonkey 2.36), the non-standard
flagsargument is deprecated and throws a console warning (bug 1142351). - Starting with Gecko 47 (Firefox 47 / Thunderbird 47 / SeaMonkey 2.44), the non-standard
flagsargument is no longer supported in non-release builds and will soon be removed entirely (bug 1245801). - Starting with Gecko 49 (Firefox 49 / Thunderbird 49 / SeaMonkey 2.46), the non-standard
flagsargument is no longer supported (bug 1108382).