是否存在类似于Rails truncate方法的方法,该方法接受索引,其中我可以指示截断的开始和分隔符参数,以便它不是从一个单词或字符串的中间开始的?
例如:
“我喜欢午饭后泡茶的味道。”我想从索引9开始抓取一个大小为15的字符串,这样会导致:
“泡泡的味道”
答案 0 :(得分:1)
我认为没有一个功能可以做到这一点,所以你必须自己编写。我建议首先砍掉字符串的开头,然后使用truncate
来处理结束。这样的事情可能会做你想要的:
def truncate_beginning_and_end(str, beginning, length, separator)
first_space_before_beginning = str[0..beginning].rindex(separator)
str_without_beginning = str[(first_space_before_beginning + 1)..-1]
truncate(str_without_beginning, length: length, separator: separator, omission: '')
end