我已經建立在我的Rails應用自定義驗證這確保瞭如下地址的格式爲:如何將一個正則表達式分解爲多行?
收件人姓名:
地址1號線:
地址2:
市:
國家:
郵政編碼:
- 或 -
銀行帳戶號碼:
銀行路由號碼:
銀行帳戶類型:
我已經實施了以下幫助程序方法來檢查地址是否與以下某種模式不匹配:
def malformed_check(address)
address !~ /^Recipient Name:(.*)$\n^Address Line 1:(.*)$\n(^Address Line 2:(.*)$\n)?^City:(.*)$\n^State:(.*)$\n^ZIP Code:(.*)$/
end
def malformed_ach(address)
address !~ /^Bank Account Number:(.*)$\n^Bank Routing Number:(.*)$\n^Bank Account Type:(.*)$/
end
我的問題是:我怎麼能打破我的正則表達式跨多行?
我們的編碼標準中每行最多有120個字符。
爲什麼要捕獲'(。*)'?除非你要對捕獲的文本做些什麼,否則這是不必要的。另外,如果你有嵌入的'\ n',則不需要中間'$'和後面的'^'。你可以做線路終點/線路終點錨點,或者'\ n',但不需要兩個。 –