Ruby on rails Ruby格式验证[无空白]
我正在尝试为文本字段创建一个格式验证,它将拒绝任何带有空格的内容。有人能帮我解释一下正则表达式的语法吗?这就是我尝试过的:Ruby on rails Ruby格式验证[无空白],ruby-on-rails,regex,validation,models,Ruby On Rails,Regex,Validation,Models,我正在尝试为文本字段创建一个格式验证,它将拒绝任何带有空格的内容。有人能帮我解释一下正则表达式的语法吗?这就是我尝试过的: no_whitespace = /\A[\S]\z/i validates :customurl, :format => { :with => no_whitespace } 我是编程新手,对正则表达式一无所知。任何帮助都将不胜感激。谢谢 试试这个: no_whitespace = /[\S]*/ no_whitespace = /^[\S]+$/ 用
no_whitespace = /\A[\S]\z/i
validates :customurl, :format => { :with => no_whitespace }
我是编程新手,对正则表达式一无所知。任何帮助都将不胜感激。谢谢 试试这个:
no_whitespace = /[\S]*/
no_whitespace = /^[\S]+$/
用于帮助您形成和测试正则表达式。尝试以下操作:
no_whitespace = /[\S]*/
no_whitespace = /^[\S]+$/
用于帮助您形成和测试正则表达式。尝试以下操作:
no_whitespace = /[\S]*/
no_whitespace = /^[\S]+$/
应在字符串的开头(^)和结尾($)之间不指定空格字符,并且至少指定1个字符。请尝试以下操作:
no_whitespace = /[\S]*/
no_whitespace = /^[\S]+$/
这应该不会指定字符串开头(^)和结尾($)之间的空格字符,并且至少指定1个字符。hmm…似乎不起作用。它仍然允许我传递一个带有空格的值。嗯……似乎不起作用。它仍然允许我传递带有空格的值。太棒了!我想是这样的!您应该使用
/\A\S+\Z/
,以防恶意用户试图发送带有换行符的文本。方括号不是必需的。^
表示行的开头,而不是字符串。类似地,$
表示行的结尾,而不是字符串的结尾。也就是说,OP的正则表达式应该适用于整个字符串(使用\A
和\Z
)。只是OP忘记了包含+
。因此,这对OP/\A[\S]+\Z/
@zabba是有效的。如果您完全正确,您应该使用\A和\Z来确保安全。但是,在这种情况下,^和$也可以使用,因为\S包含换行符。太棒了!我想是这样的!您应该使用/\A\S+\Z/
,以防恶意用户试图发送带有换行符的文本。方括号不是必需的。^
表示行的开头,而不是字符串。类似地,$
表示行的结尾,而不是字符串的结尾。也就是说,OP的正则表达式应该适用于整个字符串(使用\A
和\Z
)。只是OP忘记了包含+
。因此,这对OP/\A[\S]+\Z/
@zabba是有效的。如果您完全正确,您应该使用\A和\Z来确保安全。但是,在这种情况下,^和$也可以使用,因为\S包含换行符。