2013-04-15 36 views
1

我看了在MSDN和谷歌搜索,並不能找到我應該如何解釋這個表情......正則表達式的翻譯,無法找到這意味着什麼

它是一個地址參數... 。

^[a-zA-Z\\\d/\\\\\\\\]{0,80}$ 

我得到任何大/小寫字母,數字是允許的,並且它允許最多80個字符。

我沒有得到什麼4 \是。

我希望這個正則表達式允許特殊字符,因爲它是表單的街道地址輸入字段。例如,我希望這是說像2400 Tam O'Shanter Place或1904 Billings-Harper Terrace可以進入該領域。

+0

這是從哪裏來的?這是在一個字符串或正則表達式文字?由於所有字符都在一個字符類中,所以大多數反斜槓可能是不必要的。 –

回答

0

有5個冗餘的\個字符(全部被\轉義)。你只需要一個(當然是逃過)來允許輸入文字\

也就是說,這看起來像一個可怕的方式來驗證街道地址:

  • 它不允許連字符,這是常見的(例如,101-204 Main st)或單引號(如O'shanter)或其他幾個字符使用在地址
  • 它限制了地址輸入80個字符,這似乎是任意的,可能太短

一般來說,我不會驗證地址,除非你真正想要做一個後OFFI ce(或交付公司)查找來驗證它是一個真實的,實際的地址,即使如此,它也充滿了問題(例如,新數據庫中尚未存在的地址,或者它包含一個不在數據庫中的Suite#) 。

支付處理器還會讓您驗證信用卡號碼的地址,主要是作爲欺詐保護的一種形式。

什麼是驗證點?如果您正在運送物品,則客戶有責任確保正確的地址(可能是支付並輸入此地址)。 直到您知道它爲什麼需要有效,並且確切地說什麼是「有效」,您才能使用驗證。

您可能需要非空白或最少的字符數,但即使這樣也可能會讓您遇到與國際用戶相關的麻煩(取決於此應用的範圍)。

相關問題