JavaScript - RegExp exec 方法



JavaScript 的 RegExp.exec() 方法用於在字串中搜索正則表示式定義的指定模式。如果找到匹配項,則返回包含匹配文字的 陣列,否則返回結果為 null

在 JavaScript 中,正則表示式 (RegExp) 是一個物件,它描述用於定義搜尋模式的字元序列。正則表示式的最佳用途是用於表單驗證。當用戶透過表單(例如輸入欄位)提交資料時,您可以應用正則表示式來確保資料滿足特定條件。

語法

以下是 JavaScript RegExp.exec() 方法的語法:

RegExp.exec(str)

引數

此方法接受一個名為“str”的引數,如下所述:

  • str - 需要搜尋的字串。

返回值

如果找到匹配項,此方法返回一個包含匹配文字的陣列。否則,它將返回 null 值。

示例

如果找到匹配項,此方法將返回一個包含匹配文字的陣列

示例 1

在下面的示例中,我們使用 JavaScript 的 RegExp.exec() 方法在字串 "Tutorials point" 中搜索正則表示式定義的模式 ('to*', 'g')

<html>
<head>
   <title>JavaScript RegExp.exec() Method</title>
</head>
<body>
   <script>
      const regex = RegExp('to*', 'g');
      const str = "Tutorials point";
      document.write("The string to be searched: ", str);
      document.write("<br>The regex: ", regex);
      let arr = {};
      arr = regex.exec(str);
      document.write("<br>An array with matched text: ", arr);
      document.write("<br>The array length: ", arr.length);
   </script>
</body>
</html>

輸出

上述程式返回一個包含匹配文字的陣列。

The string to be searched: Tutorials point
The regex: /to*/g
An array with matched text: to
The array length: 1

示例 2

如果未找到匹配項,則該方法將返回 null

以下是 JavaScript RegExp.exec() 方法的另一個示例。我們使用此方法在字串 "Virat is a damn good batsman" 中搜索正則表示式定義的模式 ('/mn\*', 'g')

<html>
<head>
   <title>JavaScript RegExp.exec() Method</title>
</head>
<body>
   <script>
      const regex = RegExp('/mn\*', 'g');
      const str = "Virat is a damn good batsman";
      document.write("The string to be searched: ", str);
      document.write("<br>The regex: ", regex);
      let arr = {};
      arr = regex.exec(str);
      document.write("<br>An array with matched text: ", arr);
      document.write("<br>The array length: ", arr.length);
   </script>
</body>
</html>

輸出

執行上述程式後,它將返回 null。

The string to be searched: Virat is a damn good batsman
The regex: /\/mn*/g
An array with matched text: null

示例 3

我們可以在條件語句中使用此方法的結果來檢查是否找到匹配項。

<html>
<head>
   <title>JavaScript RegExp.exec() Method</title>
</head>
<body>
   <script>
      const regex = RegExp('\llo*', 'g');
      const str = "Hello World";
      document.write("The string to be searched: ", str);
      document.write("<br>The regex: ", regex);
      let result = {};
      result = regex.exec(str);
      
      //using method result in conditional statement....
      if(result != null){
         document.write("<br>The string '" + result[0] + "' found.")
      } else {
         document.write("<br>Not found...");
      }
   </script>
</body>
</html>

輸出

執行上述程式後,它將根據條件返回一個語句:

The string to be searched: Hello World
The regex: /llo*/g
The string 'llo' found.
廣告