ruby中的message.scan(regex).each{|m|puts"#{m[0]}"} 是什么意思

Python018

ruby中的message.scan(regex).each{|m|puts"#{m[0]}"} 是什么意思,第1张

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的结果的每一个元素的第一个字符

scan和skim的区别:意思不同、用法不同、侧重点不同

一、意思不同

1.scan意思:

vt. 扫描;浏览;审视;细看

vi. 合韵律;划分音步

n. 扫描;浏览;细看

2.skim意思:

vt. 撇去;略读;掠过;滑过

vi. 掠过;表面凝结

n. 浮沫;略读;脱脂物

二、用法不同

1.scan用法:基本含义是“看,扫视”,指一部分一部分地审视,可指认真观察研究,也可指粗略地浏览,须依据上下文确定其含义。引申还可指“合韵律”。可用作及物动词,也可用作不及物动词。用作及物动词时,后接名词或代词作宾语。

例句:

Could you teach me how to scan an image?

你可以教我如何扫描一个影像吗?

2.skim用法:既可用作不及物动词,也可用作及物动词。用作及物动词时,接名词或代词作宾语用作不及物动词时,常与over, through等连用。

例句:

The hovercraft is able to skim over the water.

气垫船能掠过水面飞速行驶。

三、侧重点不同

1.scan侧重点:用于一般现在时或一般将来时。

2.skim侧重点:用于一般现在时。