2013-06-26 32 views
0

我正在使用Zend框架驗證功能,並且無法使正則表達式驗證程序正常工作。Zend驗證器和正則表達式模式

array(
    'name' => 'Regex', 
    'options' => array(
     'pattern' => '[0-9a-zA-Z\s\'\.;\-]+', 
      'messages' => array(
      \Zend\Validator\Regex::INVALID_CHARACTERS => "Invalid characters in address" 
     ) 
    ), 
) 

我有需要接受字母,數字,空格和各種人物的不同的字符串,而我使用上面的代碼的各個領域。

我一直在閱讀framework.zend.com,它沒有提供太多的細節。

我的問題是:我做得對嗎? 這是如何使用正則表達式驗證與Zend? 這個漂浮在網絡上的更好的例子是什麼?

感謝球員...

回答

1

替換爲你的模式:

'pattern' => '/[0-9a-zA-Z\s\'.;-]+/' 

聲明:

一個正則表達式模式必須進行分隔。在這裏,我已經選擇/作爲分隔符,但你可以用#~@|`,...

你不必逃避特殊字符爲.$|,字符類中。 ;不是特殊字符,不需要在字符類內部或外部轉義。