2017-02-21 52 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