Javascript 编写一个正则表达式来匹配这些?、~、^、|和*

Javascript 编写一个正则表达式来匹配这些?、~、^、|和*,javascript,jquery,html,Javascript,Jquery,Html,有谁能帮我创建一个正则表达式,除了这五个符号:?~ ^ |*所有其他符号都可以接受 我的场景:我有一个文本框。我正在向该文本框中输入一些文本,如果文本包含这些?~^ |*符号,则会引发验证错误。您可以使用ifourstring.match/[\?\\^ ~\\\\\\\*]/!=空{/*检查输入*/}。 你有很多特殊的字符需要匹配,所以你需要用反斜杠将它们全部转义。只接受符号时遇到的问题是,在正则表达式周围放置了^和$,它们标记字符串的开始和结束。要匹配字符串中的任何位置,只需将这些字符省略。使

有谁能帮我创建一个正则表达式,除了这五个符号:?~ ^ |*所有其他符号都可以接受

我的场景:我有一个文本框。我正在向该文本框中输入一些文本,如果文本包含这些?~^ |*符号,则会引发验证错误。

您可以使用ifourstring.match/[\?\\^ ~\\\\\\\*]/!=空{/*检查输入*/}。 你有很多特殊的字符需要匹配,所以你需要用反斜杠将它们全部转义。只接受符号时遇到的问题是,在正则表达式周围放置了^和$,它们标记字符串的开始和结束。要匹配字符串中的任何位置,只需将这些字符省略。

使用带正则表达式模式的测试。将您想要检查的内容放入[]。当用户离开该文本框以检查用户输入时,聚焦输出

$target.focusoutfunction{ var testString=$'target'.val; if/[?~^ |*]/.testString console.log“输入中的字符无效”; 其他的 控制台。记录“测试通过” };
这取决于你使用的是什么语言,但类似于

[^?~^|*]+$
应该适合您,因为[]定义了一个字符类,它将匹配列出的任何字符。把^放在前面-否定比赛


你可以阅读更多关于否定类的内容

^[^?~\^^^^*]+$测试您的输入字符串如果您个人无法编写表达式,请使用此工具,然后使用可用的在线生成器,下面是一个示例:Stackoverflow不是一种论坛,您可以在没有您自己的输入的情况下使用代码(以您已经编写的代码的形式)。^[^?~\^^^*]+$这只适用于符号。如果我输入带有符号的文本,它将不起作用。示例:textwithsymbols~这表示接受,但在我的情况下,它不应接受