path = "C:\\test.txt"
puts path[/\.[^\.]+$/]
输出是
.txt
或者另一种办法,用scan方法,正则表达式还是一样:
puts path.scan(/\.[^\.]+$/)[0]
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的结果的每一个元素的第一个字符
join用来合并字条串数组,可以接受0个或1个参数作为连接字符
注:0个参数时使用空字符进行连接。
["a", "b", "c"].join # => "abc"["a", "b", "c"].join(",") # => "a,b,c"