2016-05-31 40 views
1

我試圖用角度內置驗證程序來實現模式驗證程序。我想使用這個模式:/\S+/g但它沒有工作,因爲角度覆蓋我的模式在其功能You can see it here 爲什麼他們把^和一個$在開始和結束的字符串?我應該使用自定義驗證器而不是內置?這是一個錯誤還是按預期工作?Angular 2驗證程序模式

這裏是一個plunkr http://plnkr.co/edit/OHrUitqUnhIYxsraby7J

+0

這些錨僅添加到* string *模式。如果你傳遞一個正則表達式對象(作爲一個字符串),將不會添加任何錨。另外,你不能在ng-pattern正則表達式中使用'/ g'。你能和你的驗證人分享一個小提琴嗎? –

+0

我已更新。 [Here is it](http://plnkr.co/edit/OHrUitqUnhIYxsraby7J) – bucicimaci

+1

好的,這意味着驗證器不允許像string這樣的正則表達式對象。既然你想要求至少有一個非空白字符,爲什麼不使用['「。* \\ S. *」'](http://plnkr.co/edit/mnGttywNdu5nHFDCmEyC?p=preview)? –

回答

2

看來,這驗證不允許字面正則表達式來進行傳遞。你需要確保你匹配整個字符串。因此,如果你計劃需要在字符串至少有一個非空白字符,使用

".*\\S.*" 

updated plunkr