如何在 JavaScript RegExp 中查找不在括号之间的字符?


RegExpRegEx 在 JavaScript 中是正则表达式的简写形式。正则表达式用于检查用户输入的特定字符、数字或任何其他符号组合的有效性。正则表达式主要用于检查有效的电子邮件密码,以验证正确的用户登录。

在本教程中,我们将学习如何查找 JavaScript RegExp 括号中不存在的字符。

语法

以下是用于查找 JavaScript RegExp 括号中不存在的字符的语法:

[^……]

在上面的语法中,方括号用于 RegExp 的基本语法。而符号^ 用于检查符号后的字符或字符串是否存在于句子中,而用于指示要搜索的字符。

以下是您可以检查其是否存在于句子中的项目的列表:

  • [^a] - 它将检查句子中是否缺少a
  • [^abc] - 它将分别检查每个字符(a, b, c) 以及句子中组合的(abc) 是否不存在。
  • [^A-Z] - 它将检查句子中是否存在从大写A到大写Z范围内的任何字符。
  • [^a-z] - 它将检查句子中是否存在从小写a到小写z范围内的任何字符。
  • [^A-z] - 它将检查句子中是否存在从大写A到小写z范围内的任何字符。

让我们用代码示例讨论所有这些。

算法

步骤 1 - 在算法的第一步中,您需要定义一个句子,您将在其中检查 JavaScript RegExp 括号中不存在的字符。

步骤 2 - 在第二步中,您将根据上面讨论的语法,为要检查的特定字符或字符组合定义正则表达式。

步骤 3 - 在下一步中,您将使用 JavaScript 的内置 match() 函数或方法将原始句子与您定义的正则表达式进行匹配。

步骤 4 - 在最后一步或第四步中,您将显示在将原始句子与正则表达式匹配后获得的句子。

示例 1

以下示例将说明如何查找 JavaScript RegExp 括号中不存在的单个字符。

<!DOCTYPE html> <html> <head> <title>Example - find a character, not between the brackets in JavaScript RegExp</title></head> <body> <h3>Find a character, not between the brackets in JavaScript RegEx</h3> <p>It will do a global search for the characters that are not "t":</p> <p>Original Sentence: Hey there, we are checking for character, not between the brackets of JavaScript RegExp.</p> <button onclick="display()">Check for character</button> <p id="result"></p> <script> function display() { let myStr = "Hey there, we are checking for character, not between the brackets of JavaScript RegExp."; let reg = /[^t]/g; let match = myStr.match(reg); document.getElementById("result").innerHTML = match; } </script> </body> </html>

在上面的示例中,我们搜索了 JavaScript RegExp 括号中不存在的字符t。因此,它从原始句子中匹配 RegExp 并删除字符传递的所有出现,在本例中,t 将从整个句子中删除。

示例 2

以下示例将说明如何查找 JavaScript RegExp 括号中不存在的特定范围(az 和 A-Z)之间的字符。

<!DOCTYPE html> <html> <body> <h3>Find a character, not between the brackets in JavaScript RegExp</h3> <p>It will do a global search for the characters that are not in range from "a-z" and "A-Z":</p> <p>Original Sentence: <b>Hey there, we are checking for character, not between the brackets of JavaScript RegExp.</b></p> <button onclick="display()">Check for character(in range a to z)</button> <button onclick="display2()">Check for character(in range A to Z)</button> <p id="result"></p> <script> function display() { let myStr = "Hey there, we are checking for character, not between the brackets of JavaScript RegExp."; let reg = /[^a-z]/g; let match = myStr.match(reg); document.getElementById("result").innerHTML = match; } function display2() { let myStr = "Hey there, we are checking for character, not between the brackets of JavaScript RegExp."; let reg = /[^A-Z]/g; let match = myStr.match(reg); document.getElementById("result").innerHTML = match; } </script> </body> </html>

在上面的示例中,我们正在检查字符是否不在从小写a到小写z以及从大写A到大写Z的范围内。如果您单击按钮检查字符(在 a 到 z 的范围内),它将从原始句子中删除所有小写字符。类似地,如果您单击检查字符(在 A 到 Z 的范围内),它将从原始句子中删除所有大写字母。

示例 3

以下示例将说明如何同时检查不同的字符以及这些字符的组合,这些字符不在 JavaScript RegExp 括号中:

<!DOCTYPE html> <html> <body> <h3>Find a character, not between the brackets in JavaScript RegExp</h3> <p>It will do a global search for the characters as well as combination of characters except chareacters in "there"</p> <p>Original Sentence: Hey there, we are checking for character, not between the brackets of JavaScript RegExp.</p> <button onclick="display()">Check for character</button> <p id="result"></p> <script> function display() { let myStr = "Hey there, we are checking for character, not between the brackets of JavaScript RegExp."; let reg = /[^there]/g; let match = myStr.match(reg); document.getElementById("result").innerHTML = match; } </script> </body> </html>

在上面的示例中,我们可以清楚地看到there 从原始句子中删除,以及字符t、h、e、re 也分别被删除。

在本教程中,我们已经看到了如何使用三个不同的示例来查找 JavaScript RegExp 括号中不存在的字符,以检查不同的字符或单词。这些示例将帮助您检查特定输入字段(如电子邮件、密码等)中是否存在任何符合您给定条件的字符。

更新于: 2022-10-31

1K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告