ruby - 查找带空格的单字母单词

标签 ruby regex

有一句话:

Ala ma kota i psa.

我们可以看到整个句子在一行中,但是如果我们将它放在小的 div 中,它会发生变化。

在波兰语中,我们有单字母单词,例如“i”(和)或“w”(in、with)等。

那些单词/字母留在行尾时看起来不太好,所以我们将它们放在下一行:

Ala ma kota 
i psa.

代替:

Ala ma kota i
psa.

问题:

我试图找到所有单个字母,这样我就可以用不间断空格替换结尾空格。这应该够了吧。

最佳答案

从讨论来看,似乎这些行还没有拆分,您只想捕获单字母单词“i”、“o”或“w”,并且您希望在单词。让我们也允许分号,只是为了让它更有趣。

你可能会这样做:

def no_orphan( str )
    str.gsub( /( [iow][,;]?) /, '\1 ' )
end

irb 中的示例:

irb(main):001:0> def no_orphan( str )
irb(main):002:1>     str.gsub( /( [iow][,;]?) /, '\1 ' )
irb(main):003:1> end
=> nil
irb(main):004:0> no_orphan 'Ala ma kota i psa.'
=> "Ala ma kota i psa."
irb(main):005:0> no_orphan 'Ala ma kota i, psa.'
=> "Ala ma kota i, psa."
irb(main):006:0> no_orphan 'Ala ma kota i; psa.'
=> "Ala ma kota i; psa."
irb(main):007:0> no_orphan 'Test Rocky V with space.'
=> "Test Rocky V with space."
irb(main):008:0> 

关于ruby - 查找带空格的单字母单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30464934/

相关文章:

regex - 重复正则表达式模式

regex - 获取模式中的前一个单词

ruby-on-rails - FactoryGirl - 如何创建记录层次结构?

python - 使用正则表达式和 python 3 在字符串中查找模式

arrays - 如何从 Ruby 数组中删除重复的连续元素,但不是所有重复的元素?

ruby-on-rails - Rails elasticsearch 映射被忽略

Java正则表达式,替换某些字符,除了

JavaScript 正则表达式 : capture property name after array index

ruby-on-rails - Rails 3 迁移中使用 rename_column 后出现未知属性错误

ruby - 将 Rally 与 Subversion 集成时如何更新 "Fixed In"字段?