【发布时间】:2017-06-03 08:51:45
【问题描述】:
我有一些带有句子的字符串,我需要将其细分为最多 40 个字符的子字符串。 但我不想在一个单词中间拆分句子。
我尝试使用 .gsub 函数,但它最多返回 40 个字符,并避免在单词中间剪切字符串。但它只返回第一次出现。
sentence[0..40].gsub(/\s\w+$/,'')
我尝试过拆分,但我只能选择前 40 个字符并在单词中间拆分...
sentence.split(...){40}
我的字符串是"Sure, we will show ourselves only when we know the east door has been opened."。
我想要的字符串输出是
["Sure, we will show ourselves only when we","know the east door has
been opened."]
你有解决办法吗?谢谢
【问题讨论】:
-
试试
sentence[/\A.{0,40}\b/m] -
你有句子例子,输出应该是什么?
-
@WiktorStribiżew 它只返回第一次出现。
-
@EricDuminil 我的字符串句子示例是“当然,只有当我们知道东门已经打开时,我们才会展示自己。”。我想要这个字符串输出:[“当然,只有当我们”,“知道东门已经打开时,我们才会展示自己。”]
标签: ruby-on-rails ruby regex