JavaScript 如何克隆给定的正则表达式

JavaScript 如何克隆给定的正则表达式

在本文中,我们将了解如何使用JavaScript克隆一个正则表达式。我们可以使用构造函数 RegExp() 来克隆一个给定的正则表达式。

使用该构造函数的语法如下所示:

语法:

new RegExp(regExp , flags)

在这里regExp是要被克隆的表达式,flags确定克隆的标志。主要有三种类型的标志被使用。

  • g : 全局匹配标志。
  • i : 忽略大小写标志。
  • m : 多行匹配标志。

现在让我们看看如何使用Javascript中的RegExp( )构造函数来克隆一个给定的正则表达式。

示例

<!DOCTYPE html> 
<html lang="en"> 
  <head> 
    <meta charset="utf-8" /> 
    <meta name="viewport" content="width=device-width" /> 
  
    <script src= 
"https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"> 
    </script> 
    <title>Clone a given regular expression</title> 
  </head> 
  <body style="text-align: center"> 
    <p>Enter Regular Expression to clone</p> 
  
    <input type="text" id="data" name="input" /><br /> 
    <button id="b1">Clone Regex</button> 
    <div id="display"></div> 
  
    <script> 
      function cloneRegex(input, outputflag) { 
        var pattern = input.source; 
        const flags = [...new Set(input.flags + outputflag)].join(""); 
        // Using RegExp constructor to  for cloning regular expressions, 
        // optionally while modifying flag also. 
        return new RegExp(pattern, flags); 
      } 
  
      //Taking User data as input 
      var d = ("#data").val(); 
  
      var regex = new RegExp(d, "i"); 
      //Passing user data to cloneRegex function with g set as flag. 
      var clonedregex = cloneRegex(regex, "g"); 
  
      ("#b1").click(function () { 
        $("#display").html("Cloned regex is as follows:-" + clonedregex); 
      }); 
    </script> 
  </body> 
</html> 

输出1:

JavaScript 如何克隆给定的正则表达式

输出2:

JavaScript 如何克隆给定的正则表达式

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程