簡體   English   中英

如何刪除字符串中子字符串的第一次出現?

[英]How do I remove the first occurence of a substring in string?

如何刪除給定子字符串的第一次出現?

我有:

phrase = "foobarfoo"

而且,當我打電話時:

phrase.some_method_i_dont_know_yet ("foo")

我希望這句話看起來像barfoo

我嘗試deleteslice但第一個刪除了所有出現的內容,但第二個只返回切片。

使用sub! 用 ""(nothing) 替換您要查找的內容,從而將其刪除:

phrase.sub!("foo", "")

最后的 !(bang) 使其永久化。 subgsub不同,因為sub僅替換您嘗試查找的字符串的第一個實例,而gsub查找所有實例。

sub會做你想做的。 gsub是您可能已經熟悉的全球版本。

使用String#[]方法:

phrase["foo"] = ""

相比之下,在我的系統中,此解決方案比String#sub!快 17% String#sub!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM