p container = [cattle, cattle]
cattle[2] = "p"
p cattle[2]
首先,第一行cattle被你定义为字符串,第三行你将字符串当做数组来取出打印,print 命令会打印出p的编码,我们知道print打印的是字符编码,你查询字符表,p,就是112.
message 是一个字符串regex 是一个正则表达式
message.scan(regex)得到 符合regex这个正则表达式的一个数组
message.scan(regex).each{|m|puts"#{m[0]}"} 中 m是数组中的每一个元素,是一个字符串,m[0]就是m的第一个字符
所以message.scan(regex).each{|m|puts"#{m[0]}"} 就是打印message符合regex的结果的每一个元素的第一个字符