JavaScript - How to Use a Variable in Regular Expression? Last Updated : 04 Dec, 2024 Comments Improve Suggest changes Like Article Like Report To dynamically create a regular expression (RegExp) in JavaScript using variables, you can use the RegExp constructor. Here are the various ways to use a variable in Regular Expression.1. Using the RegExp Constructor with a VariableIn JavaScript, regular expressions can be created dynamically using the RegExp constructor. This method allows you to pass a string as the pattern and optionally specify flags for the regular expression. JavaScript let search = "hello"; let regex = new RegExp(search, "i"); // Case-insensitive search let s = "Hello, how are you?"; let res = regex.test(s); console.log(res); Outputtrue search: A variable that contains the word you want to search for in the string.new RegExp(search, "i"): This dynamically creates a regular expression based on the search variable. The "i" flag makes the search case-insensitive.test(str): The test() method checks if the regular expression matches the string str.2. Using Variables to Create More Complex PatternsYou can use variables to dynamically create more complex regular expressions as well, such as matching multiple words or patterns. JavaScript let w1 = "apple"; let w2 = "banana"; let regex = new RegExp(w1 + "|" + w2, "i"); let s = "I like both apple and banana."; let res = regex.test(s); console.log(res); Outputtrue w1 + "|" + w2: This creates a pattern that matches either "apple" or "banana". The | symbol is used as an OR operator in regular expressions.new RegExp(w1 + "|" + w2, "i"): Dynamically creates the regular expression.test(): Checks if the pattern matches the string.3. Using Variables for Flags in Regular ExpressionsYou can also dynamically set the flags of a regular expression. This is useful if you want to apply different search options based on certain conditions. JavaScript let pattern = "hello"; let flag = "i"; let regex = new RegExp(pattern, flag); let s = "Hello world!"; let res = regex.test(s); console.log(res); Outputtrue flag = "i": The flag is stored in a variable, which you can change dynamically.new RegExp(pattern, flag): The regular expression is constructed using both the pattern and the flag variable.test(): The method checks if the regular expression matches the string.4. Special Case: Escaping Special Characters in VariablesWhen using a variable in a regular expression, you might need to escape special characters (like ., *, +, etc.) that could interfere with the regular expression syntax. JavaScript let pattern = "hello.world"; let escapedPat = pattern.replace(/[.*+?^=!:${}()|\[\]\/\\]/g, "\\$&"); let regex = new RegExp(escapedPat); let s = "hello.world"; let res = regex.test(s); console.log(res); Outputtrue replace(/[.*+?^=!:${}()|\[\]\/\\]/g, "\\$&"): This line escapes any special characters in the pattern. Special characters in regular expressions need to be escaped to match them literally.new RegExp(escapedPat): After escaping special characters, the escapedPat is used to create a valid regular expression.Use Cases for Using Variables in Regular ExpressionsDynamic Searching: When you need to match a pattern that changes based on user input or some other dynamic data (like matching a search term).Form Validation: Dynamically generate regular expressions based on form input values to validate things like email, phone numbers, or passwords.Text Processing: When processing text files or strings dynamically, you can use variables to build the search pattern based on the data. Comment More infoAdvertise with us Next Article JavaScript - How to Use a Variable in Regular Expression? N nikhilgarg527 Follow Improve Article Tags : JavaScript Web Technologies JavaScript-RegExp JavaScript-Questions Similar Reads Non-linear Components In electrical circuits, Non-linear Components are electronic devices that need an external power source to operate actively. Non-Linear Components are those that are changed with respect to the voltage and current. Elements that do not follow ohm's law are called Non-linear Components. Non-linear Co 11 min read JavaScript Tutorial JavaScript is a programming language used to create dynamic content for websites. It is a lightweight, cross-platform, and single-threaded programming language. It's an interpreted language that executes code line by line, providing more flexibility.JavaScript on Client Side: On the client side, Jav 11 min read Web Development Web development is the process of creating, building, and maintaining websites and web applications. It involves everything from web design to programming and database management. Web development is generally divided into three core areas: Frontend Development, Backend Development, and Full Stack De 5 min read Spring Boot Tutorial Spring Boot is a Java framework that makes it easier to create and run Java applications. It simplifies the configuration and setup process, allowing developers to focus more on writing code for their applications. This Spring Boot Tutorial is a comprehensive guide that covers both basic and advance 10 min read React Interview Questions and Answers React is an efficient, flexible, and open-source JavaScript library that allows developers to create simple, fast, and scalable web applications. Jordan Walke, a software engineer who was working for Facebook, created React. Developers with a JavaScript background can easily develop web applications 15+ min read Class Diagram | Unified Modeling Language (UML) A UML class diagram is a visual tool that represents the structure of a system by showing its classes, attributes, methods, and the relationships between them. It helps everyone involved in a projectâlike developers and designersâunderstand how the system is organized and how its components interact 12 min read Steady State Response In this article, we are going to discuss the steady-state response. We will see what is steady state response in Time domain analysis. We will then discuss some of the standard test signals used in finding the response of a response. We also discuss the first-order response for different signals. We 9 min read JavaScript Interview Questions and Answers JavaScript (JS) is the most popular lightweight, scripting, and interpreted programming language. JavaScript is well-known as a scripting language for web pages, mobile apps, web servers, and many other platforms. Both front-end and back-end developers need to have a strong command of JavaScript, as 15+ min read React Tutorial React is a JavaScript Library known for front-end development (or user interface). It is popular due to its component-based architecture, Single Page Applications (SPAs), and Virtual DOM for building web applications that are fast, efficient, and scalable.Applications are built using reusable compon 8 min read Backpropagation in Neural Network Back Propagation is also known as "Backward Propagation of Errors" is a method used to train neural network . Its goal is to reduce the difference between the modelâs predicted output and the actual output by adjusting the weights and biases in the network.It works iteratively to adjust weights and 9 min read Like