2017-02-21 82 views
-4

我希望有人能够帮助我提出一个我需要的表单输入的正则表达式。以下是我能和不能接受:没有撇号或&号的正则表达式

  • 没有撇号
  • 无符号
  • 没有空白值
  • 一切是公平的,据我所知
游戏

编辑:

checkRegexp func和平:

function checkRegexp(o, regexp, n) { 
     if (!(regexp.test(o.val()))) { 
     o.addClass("ui-state-error"); 
     updateTips(n); 
     return false; 
     } else { 
     return true; 
     } 
    } 
+2

分享你的研究可以帮助大家。告诉我们你试过了什么,以及它为什么不符合你的需求。这表明你已经花时间去尝试帮助自己,它使我们避免重申明显的答案,最重要的是它可以帮助你得到更具体和相关的答案!另请参阅:[问] –

+1

这可能是一个好主意,请问什么是不接受这些值的原因?从这个简单的请求来看,这听起来像是一个非常糟糕的过滤输入以避免攻击的尝试。当我说如果目标是安全的话,请相信我,这不是开始的正确的地方。 – Simba

回答

3

您可以使用此一:/^[^'&]+$/

var test = [ 
 
    "&test", 
 
    "'aaa", 
 
    "WHIte Space", 
 
    "RegexIsAwesome", 
 
    "   ", 
 
]; 
 

 
test.forEach(function(element) { 
 
    console.log(element + " => " + /^[^'&]+$/.test(element.trim())); 
 
});

+0

我认为空间是允许的!他说没有空白值不是空格! –

+0

是的,这是正确的@ibrahimmahrir“WHIte空间”应该是真的 – Rataiczak24

+0

@ibrahimmahrir很好的发现,我更正了 –

2

喜欢这个?

/^[^'&]+$/ 

尝试和学习regexr.com正则表达式。

+0

这两个答案的工作......还有,我刚才想到的......有没有办法让你只输入一个空格而没有实际的字符,它会返回false? – Rataiczak24

+0

'/^[^'&] * [^'&\ s] [^'&] * $ /' – Siphalor