2010-11-06 47 views
1

我寫了一個JavaScript正則表達式來驗證逗號分隔的標籤列表。 標籤可以包含字符A-Z,a-z,0-9,空格,連字符和撇號,長度爲3-50個字符。參加我的JavaScript正則表達式以逗號分隔的標籤列表以允許空格

以下是我有:

^[a-zA-Z0-9\- ']{3,50}(,[a-zA-Z0-9\- ']{3,50})*$ 

我想擴展,以允許用戶在不提供任何標籤。但是,如果我在正則表達式的第一個標籤部分之後放置了一個問號,它將允許像,tag

如何讓它允許空格或上面的內容? (我說允許它爲空或以上,但我要修剪的條目,我會手下留情,說是空白OK)

+0

不知道這是否是一種好方法。你怎麼可能告訴用戶標籤x太長或標籤y有無效字符 – Harmen 2010-11-06 16:50:20

+0

你是指空格字符還是任何空白字符?如果後者,你的意思只是水平的空白,正確的,而不是垂直的?什麼是數據源?它是ASCII碼嗎? – tchrist 2010-11-06 18:04:55

回答

4

這裏是一個嘗試:

^([-a-zA-Z0-9 ']{3,50},)*([-a-zA-Z0-9 ']{3,50})?$ 
+0

不可思議。我明顯看到了這個解決方案,但它更聰明。 – 2010-11-06 16:55:37

+0

不知道爲什麼我的大腦根本沒有想到這一點,謝謝! – 2010-11-06 17:00:14

1
^(\s*|[a-zA-Z0-9\- ']{3,50}(,[a-zA-Z0-9\- ']{3,50})*)$ 
相關問題