Alpha数字通配符搜索的正则表达式

时间:2019-03-07 22:23:40

标签: javascript c# regex asp.net-mvc

我需要一个仅包含字母数字值的搜索框正则表达式,但允许在通配符搜索中使用最后的“ *”。

类似“ 123 *”,“ abc *”或“ abc”之类的

  $(".onlyAlphaNumericWildcard").keypress(function (e) {
     //Alphanumeric and also an optional "*" at the end
     var keyCode = e.which;
     var inp = String.fromCharCode(keyCode);
     if (/[a-zA-Z0-9*]/.test(inp)) {
        return true;
     }
     return false;
   });

但是以上代码在任意位置都包含多个*字符。我只想将其限制为一个,如果可能的话,也只能在结尾处。

感谢任何帮助。

谢谢!

2 个答案:

答案 0 :(得分:0)

类似这样的事情: ^[a-zA-Z0-9]+\*?$

答案 1 :(得分:0)

使用此正则表达式/(^\w+\*$)|(^\w+$)/g,您可以匹配abcabc*

的另一种方式:^\w+\*?$

\*?$:最后是可选*。

^\w:开头的单词1个或更多

const regex = /(^\w+\*$)|(^\w+$)/g;
const text = "abc"

console.log(text.match(regex))