Wildcard Pattern Matching using Javascript Regular Expression

JavaScript offers support, for expressions, which provides a convenient way to handle wildcard pattern matching. Regular expressions are patterns that are used to find character combinations within strings.

Here is an example of how you can utilize expressions in JavaScript to perform pattern matching:

Syntax:

function wildcardMatch(text, pattern) {
    const regexPattern =
        new RegExp('^' + pattern.replace(/\?/g, '.').replace(/\*/g, '.*') + '$');
    return regexPattern.test(text);
}

Parameters:

  • text: It is the main string that is to be checked.
  • pattern: It is the wildcard pattern that is used to check the specific pattern in the text.

In this implementation:

  • The wildcardMatchRegExp function converts the given wildcard pattern into a regular expression pattern. It replaces ‘?’ with ‘.’ to match any character. With ‘.’ to match zero or more characters.
  • To ensure that the entire string matches the pattern the regular expression is anchored at the start (^). End ($) of the string.
  • The test method of the regular expression object is used to check if the text matches the pattern.

This approach is concise. Leverages JavaScripts built-in functionality, for expressions enabling efficient handling of wildcard pattern matching. Similarly, you can add test cases by providing text and pattern values and verifying their results.

Example: This example demonstrates the above-mentioned approach.

Javascript




function wildcardMatchRegExp(text, pattern) {
  
    // Convert wildcard pattern to a 
    // regular expression pattern
    const regexPattern = new RegExp(
        "^" +
        pattern
            .replace(/\?/g, ".")
            .replace(/\*/g, ".*") +
        "$"
    );
  
    // Test if the text matches the
    // regular expression pattern
    return regexPattern.test(text);
}
  
// Test case
const text = "w3wiki";
const pattern = "*****Ge****ks";
  
if (wildcardMatchRegExp(text, pattern)) {
    console.log("Pattern is Matched");
} else {
    console.log("Pattern is not matched");
}


Output

Pattern is Matched

Wildcard Pattern Matching in JavaScript

In this article, we will see Pattern matching with wildcards which is an encountered problem, in the field of computer science and string manipulation. The objective is to determine whether a given wildcard pattern matches a string or not. In this article, we will discuss the step-by-step algorithm for wildcard pattern matching providing code examples in JavaScript.

Similar Reads

Understanding Wildcard Patterns

A wildcard pattern consists of letters as special symbols like...

Approaches for Wildcard Pattern Matching

Javascript Regular Expression Pattern-Matching Algorithm...

Wildcard Pattern Matching using Javascript Regular Expression

JavaScript offers support, for expressions, which provides a convenient way to handle wildcard pattern matching. Regular expressions are patterns that are used to find character combinations within strings....

Wildcard Pattern Matching using Pattern-Matching Algorithm

...