gpt4 book ai didi

Ruby 删除方法(字符串操作)

转载 作者:数据小太阳 更新时间:2023-10-29 07:03:22 24 4
gpt4 key购买 nike

我是 Ruby 新手,并且一直在阅读 Neighborly 先生的 Humble Little Ruby 指南。在此过程中,代码示例中出现了一些拼写错误,但我一直设法找出问题所在并随后修复它 - 直到现在!

这真的很基本,但我无法让以下示例在 Mac OS X (Snow Leopard) 上运行:

gone = "Got gone fool!"
puts "Original: " + gone
gone.delete!("o", "r-v")
puts "deleted: " + gone

我期望的输出是:

Original: Got gone fool!
deleted: G gne fl!

我实际得到的输出是:

Original: Got gone fool!
deleted: Got gone fool!

删除!方法似乎没有任何效果。

谁能解释这里出了什么问题? :-\

最佳答案

String.delete 方法 (Documented here) 将其参数视为数组,然后根据其数组的 交集 删除字符。

两个数组的交集是两个数组共有的所有字符。因此,您对 gone.delete!("o", "r-v") 的原始删除将变为

gone.delete ['o'] & ['r','s','t','u','v']

两个数组中都没有字符,因此删除会得到一个空数组,因此不会删除任何字符。

关于Ruby 删除方法(字符串操作),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2707469/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com