我创建了一个 QQ 群,欢迎大家加入:222359552,加入的时候请注明 Ruby China
日语资料实在看不懂
Good Job
EDX 那链接不对吧
#50 楼 @happypeter 是的
@happypeter 视频挺给力,Rails 实践。
真诡异。在使用操作符的时候要注意 Ruby 的空格,要在操作符两边对称。
@Martin91 为什么你不去做呢,开源的。:D
class Phrase
attr_reader :a_phrase
def initialize(a_phrase)
@a_phrase = a_phrase.to_s
@re = /(?:[,:]|\s|(?:\s[,:]\s))/
end
def word_count(re=@re)
h = Hash[]
@a_phrase.split(re).each_with_index{|i,index| h[index]=i}
h
end
end
str = "olly olly in come free"
p = Phrase.new str
p.word_count #=> {0=>"olly", 1=>"olly", 2=>"in", 3=>"come", 4=>"free"}
p.word_count(/\s/) #=> {0=>"olly", 1=>"olly", 2=>"in", 3=>"come", 4=>"free"}
稍微修改了下楼主的代码,不过这样不太好,每次解析都需要创建一个 Phrase 的对象。
修改版: 一切尽在代码中。
class Phrase
def initialize
@re = /(?:[,:]|\s|(?:\s[,:]\s))/
end
def phrase(str, re=@re)
return 0 unless str.is_a? String
h = Hash[]
str.split(re).each_with_index{|i,index| h[index]=i}
h
end
end
str = "olly olly in come free"
p = Phrase.new
p.phrase str
那个正则有一点问题,
"car : carpet as java : javascript!!&@$%^&"
这种带空格的字符串 carpet as java 也会被分隔开。
不过你可以给 phrase 传个正则。XD
补:鉴于你测试里的字符串什么类型都有,所以一行正则恐怕难以完成任务。 你应该分情况去写正则判断了。
@leopku 如果是 Ruby2.0,请使用关键字参数:
hash = {a:1, b:1}
def foo(**hash)
puts hash.inspect
end
def bar(**hash)
foo(hash)
end
要说女同学嘛,我青梅竹马的那些女同学孩子都打酱油了呢
越重构越复杂。
所谓的月经贴
@andor_chen 官网的是你们翻译的吗,没看到有中文字幕啊。
请看这篇帖子里我的回复,正好有解释到 block,proc,lambda。 http://ruby-china.org/topics/13157 #86 楼
从来没有 code review 的团队如果想推广,可以把团队分为两组,一组进行 code review,一组不 review。从 bug 数量,代码的可维护性,团队成员之间的了解程度,或其他方面来进行比较,这样慢慢分组推广比较好,到底有什么好处,有参照有对比。
#9 楼 @small_fish__ 那网站支持 vedio 吗,不过 51cto 我是和他们合作,暂时还不能放。