ruby字符串或数字按条件匹配拆分
String.partition用法及代码示例
用法
partition(sep) → [head, sep, tail] partition(regexp) → [head, match, tail]
在字符串中搜索 sep 或模式 ( regexp ) 并返回它之前的部分、匹配项和之后的部分。如果未找到,则返回两个空字符串和 str 。
"hello".partition("l") #=> ["he", "l", "lo"]
"hello".partition("x") #=> ["hello", "", ""]
"hello".partition(/.l/) #=> ["h", "el", "lo"]
enumerable的partition()是Ruby中的内置方法,它返回两个数组,一个数组包含返回true的enumerable元素,而另一个包含返回false的元素。如果未传递任何块,它将返回一个枚举数。
用法 enu.partition { |obj| block }
参数:该函数根据要进行的分区占用一个块。
返回值:返回两个数组。
例子1:
# Ruby program for partition method in Enumerable
# Initialize an enumerable
enu1 = [10, 19, 18]
# Prints
enu1.partition { |num| num>12}
输出:
[[19, 18], [10]]
范例#2:
# Ruby program for partition method in Enumerable # Initialize an enumerable enu1 = (1..100) # Prints enu1.partition
输出:
Enumerator: 1..100:partition