2

String#delete解释a-z为字符范围。但是,我希望它删除fa-zo.

"fojwfa-zowj".delete("fa-zo") #=> "-"

期望的结果:

"fojwwj"
4

3 回答 3

3

你也可以使用这个小技巧:

string = "fojwfa-zowj"

string[/fa-zo/] = ''

string
# => "fojwwj"

但是请注意,这会在适当的位置修改字符串,例如#gsub!,它应该更快并且应该使用更少的内存,但如果考虑得不好,可能会引入副作用。

于 2012-11-09T09:04:13.233 回答
2
"fojwfa-zowj".gsub("fa-zo","")  # => "fojwwj"
于 2012-11-09T08:53:02.600 回答
2
"fojwfa-zowj".tap{ |s| s.slice! "fa-zo" } # just for the Heaven of it
于 2012-11-09T09:07:08.757 回答