【发布时间】:2012-12-07 00:01:52
【问题描述】:
我正在学习 Ruby,但未能使复合“if”语句起作用。这是我的代码(希望能自我解释)
commentline = Regexp.new('^;;')
blankline = Regexp.new('^(\s*)$')
if (line !~ commentline || line !~ blankline)
puts line
end
变量'line'是通过读取以下文件得到的:
;; alias filename backupDir
Prog_i Prog_i.rb ./store
Prog_ii Prog_ii.rb ./store
这失败了,我不知道为什么。基本上我希望在处理文件中的行期间忽略注释行和空白行。感谢您的帮助。
【问题讨论】:
-
这确实属于 SO。一个很好的规则是,如果你在你的 IDE 前面,那么问题就属于 SO。如果您在白板前,它属于程序员。
-
沃尔特,我相信你,但我不明白为什么它不属于“程序员”。我已经阅读了文档,您能帮帮我吗?
-
作为参考,Ruby 有一个标准的内置语法来创建正则表达式。
commentline = /^;;/和blankline = /^(\s*)$/在你的情况下。 -
@sawa - 哇,你在小学学过逻辑!!!我想我当时正在学习礼仪。
标签: ruby