我需要为如下的表达式行编写一个正则表达式:
constraint :name, 'name != nil'
constraint :name, 'name =~/^[A-Z]/'
constraint :age, 'age >= 0'
一行总是包含单词“constraint :”,任何单词都可以跟在“:”之后,然后是“,”。
条件表达式将出现在 ' ' 内。
我写了一个这样的正则表达式:
/^constraint :(\w*),'(.*)'$/
而且不匹配。我是 Ruby 和正则表达式的新手。谁能帮帮我?
最佳答案
您忘记了逗号后的空格。
试试 /^constraint :(\w*), '(.*)'$/
尽管为了更笼统,我还是会这样:/^constraint :([^,]+),\s*'(.*)'$/
。
关于用于条件表达式的 Ruby 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15271089/