Your Search Results


    The search() method executes a search for a match between a regular expression and this String object.



    Optional. A regular expression object. If a non-RegExp object obj is passed, it is implicitly converted to a RegExp by using new RegExp(obj).


    If successful, search() returns the index of the first match of the regular expression inside the string. Otherwise, it returns -1.

    When you want to know whether a pattern is found in a string use search() (similar to the regular expression test() method); for more information (but slower execution) use match() (similar to the regular expression exec() method).


    The following example logs a message which depends on the success of the test.

    function testinput(re, str) {
      var midstring;
      if ( != -1) {
        midstring = ' contains ';
      } else {
        midstring = ' does not contain ';
      console.log(str + midstring + re);


    Specification Status Comment
    ECMAScript 3rd Edition. Standard Initial definition. Implemented in JavaScript 1.2.
    ECMAScript 5.1 (ECMA-262)
    The definition of '' in that specification.
    ECMAScript 6 (ECMA-262)
    The definition of '' in that specification.

    Browser compatibility

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
    Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

    Gecko-specific notes

    • Prior to Gecko 8.0, search() was implemented incorrectly; when it was called with no parameters or with undefined, 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.

    See also

    Document Tags and Contributors

    Last updated by: Mingun,
    Hide Sidebar