为什么Eclipse的抱怨我的代码“功能嫉妒”的味道? [关闭]
-
19-09-2019 - |
题
蚀(RedRails)抱怨“特征羡慕 “在下面的代码:
if input_text =~ /^(---\s*\n.*?\n?)(---.*?)/m
content_text = input_text[($1.size + $2.size)..-1] # warning in $1
header = YAML.load($1)
@content = content_text.strip()
@title = header["title"]
end
我的理解是,我安全地忽略此警告。但我徘徊,为什么会产生这样的警告。我不明白如何可以用于$1.size
和$1
提取方法。
解决方案
臭佬告诉你的是,由于要添加的相同类别的两个属性,计算应在实际属于String
。当添加串长度,这是当然的无义,但在你的情况下,代码的可以通过使用$&
(完整的匹配的字符串)被简化为:
input_text[$&.size..-1]
不隶属于 StackOverflow