2016-08-16 37 views
0

有誰知道爲什麼我的正則表達式仍然允許將製表符字符粘貼到表單字段中?我想我正確地寫......從答案正則表達式仍允許將製表符粘貼到表單字段

/^[a-zA-Z\s]+$/g 

建議到後:

self.City = ko.observable(model.City).extend({ required: true, maxLength: 30, pattern: /^[a-zA-Z ]+$/ }); 
+2

'\ s'做的。你需要做什麼?如果你需要一個文字空間,用空格替換'\ s'。 –

+0

'\ s'是一個製表符,空格或換行符。 – chris85

+0

對,這不是我寫的嗎? –

回答

1

\s允許標籤,還有更多的空白字符。

如果你需要一個文字空間替換\s一個空格。

你也不需要全局修飾符。

使用

/^[a-zA-Z ]+$/ 

在淘汰賽中,使用

self.City = ko.observable(model.City) 
    .extend({ required: true }) 
    .extend({ maxLength: 30 }) 
    .extend({ pattern: { 
       message: 'Only letters and spaces are allowed.', 
       params: '^[a-zA-Z ]+$' 
    }}); 
+0

對不起,但這沒有奏效。它仍然允許通過將選項卡空間粘貼到字段中創建空白。任何其他想法? –

+0

它用在'ng-pattern'中嗎?然後添加'ng-trim =「false」'。 –

+0

@DeanFriedland請顯示,您如何使用該正則表達式來阻止粘貼選項卡。 – Teemu