Arrays 删除字符串数组中的字母
我有一个字符串数组Arrays 删除字符串数组中的字母,arrays,ruby,string,Arrays,Ruby,String,我有一个字符串数组 array = ["Hello", "This", "is", "Great"] 如何删除上述数组中特定字符串的特定字母 假设我想删除字符串“is”中的字母s 我知道数组[2][1]用于选择字母“s”;使用这个,我想可能.delete_at(2)(1)也可以用类似的方式使用,但不是 我们将不胜感激 您可以使用切片: mystring = "bla" mystring.slice!(1) mystring现在将返回“ba”。在您的示例中使用此选项: array[2].sli
array = ["Hello", "This", "is", "Great"]
如何删除上述数组中特定字符串的特定字母
假设我想删除字符串“is”中的字母s
我知道数组[2][1]用于选择字母“s”;使用这个,我想可能.delete_at(2)(1)
也可以用类似的方式使用,但不是
我们将不胜感激 您可以使用切片:
mystring = "bla"
mystring.slice!(1)
mystring现在将返回“ba”。在您的示例中使用此选项:
array[2].slice!(1)
数组现在返回
["Hello", "This", "i", "Great"]
您可以使用切片:
mystring = "bla"
mystring.slice!(1)
mystring现在将返回“ba”。在您的示例中使用此选项:
array[2].slice!(1)
数组现在返回
["Hello", "This", "i", "Great"]
我知道数组[2][1]
用于选择字母“s”
实际上,但是[2][1]
是两个不同的方法调用:数组[2]
调用,它返回给定索引处的元素:
array[2] #=> "is"
string = "is"
string #=> "is"
string.slice!(1) #=> "s"
string #=> "i"
对该返回值调用[1]
,即“is”
:
或者使用临时变量来说明:
string = array[2] #=> "is"
string[1] #=> s
由于返回值是一个字符串,[1]
调用
我想,.delete_at(2)(1)
也可以用类似的方式使用,但是不行
数组不(也不应该)知道关于其元素的任何信息。因此,不能要求数组删除它包含的字符串的一部分。你必须要求字符串这样做
可用于删除给定索引处的字符:
array[2] #=> "is"
string = "is"
string #=> "is"
string.slice!(1) #=> "s"
string #=> "i"
应用于您的阵列:
array = ["Hello", "This", "is", "Great"]
array[2] #=> "is"
array[2].slice!(1) #=> "s"
array[2] #=> "i"
array #=> ["Hello", "This", "i", "Great"]
我知道数组[2][1]
用于选择字母“s”
实际上,但是[2][1]
是两个不同的方法调用:数组[2]
调用,它返回给定索引处的元素:
array[2] #=> "is"
string = "is"
string #=> "is"
string.slice!(1) #=> "s"
string #=> "i"
对该返回值调用[1]
,即“is”
:
或者使用临时变量来说明:
string = array[2] #=> "is"
string[1] #=> s
由于返回值是一个字符串,[1]
调用
我想,.delete_at(2)(1)
也可以用类似的方式使用,但是不行
数组不(也不应该)知道关于其元素的任何信息。因此,不能要求数组删除它包含的字符串的一部分。你必须要求字符串这样做
可用于删除给定索引处的字符:
array[2] #=> "is"
string = "is"
string #=> "is"
string.slice!(1) #=> "s"
string #=> "i"
应用于您的阵列:
array = ["Hello", "This", "is", "Great"]
array[2] #=> "is"
array[2].slice!(1) #=> "s"
array[2] #=> "i"
array #=> ["Hello", "This", "i", "Great"]
您还可以使用字符串的
delete代码>方法
在您的情况下,当应用于阵列时,它将返回:
array = ["Hello", "This", "is", "Great"]
array[2] #=> "is"
array[2].delete! "s" #=> "i"
array #=> ["Hello", "This", "i", "Great"]
请注意,delete代码>就地执行删除操作,返回str,如果str未修改,则返回nil。您也可以使用String的删除代码>方法
在您的情况下,当应用于阵列时,它将返回:
array = ["Hello", "This", "is", "Great"]
array[2] #=> "is"
array[2].delete! "s" #=> "i"
array #=> ["Hello", "This", "i", "Great"]
请注意,delete代码>就地执行删除操作,返回str,如果str未被修改,则返回nil。提示:它不是多维数组(正如您的一个标记所建议的那样)。这是一个字符串数组<代码>数组[2]
为您提供所需的字符串。浏览并查看是否可以要求字符串按需要的方式更改自身。(有几种方法可以帮助你实现这一点)今后,我建议你至少等几个小时再选择答案。不用着急。别担心,我不需要你的建议,不过还是谢谢你。提示:这不是多维数组(正如你的一个标签所建议的)。这是一个字符串数组<代码>数组[2]
为您提供所需的字符串。浏览并查看是否可以要求字符串按需要的方式更改自身。(有几种方法可以帮助你实现这一点)今后,我建议你至少等几个小时再选择答案。不用着急。别担心,我不需要你的建议,但无论如何还是要谢谢你。slice太具体了,太笼统了,例如case。@kiddorails,你什么意思?@Stefan,我的错。请仔细重读这个问题。我以为headchefdaniel想删除某个数组位置上的字符(比如“s”)。slice太具体和笼统了,例如case。@kiddorails,你是什么意思?@Stefan,我的错。请仔细重读这个问题。我以为headchefdaniel想删除某个数组位置的字符(比如“s”)。