任何时候字符串都包含大写字母后跟一个句号,我想用大写字母替换大写字母和句号。
Today MR. Johnson walked to the mail box.
=> Today MR Johnson walked to the mail box.
William SR. won the race.
=> William SR won the race.
我尝试使用gsub
完成此操作:
MyText = "William SR. won the race."
MyText = MyText.gsub(/[A-Z]\./,**I DON'T KNOW WHAT TO PUT HERE**]
我可以匹配大写字母后跟句点,但我无法弄清楚如何用句号之前的大写字母替换我的匹配。
答案 0 :(得分:7)
另一种没有环视和使用捕获组的方法:
MyText = MyText.gsub(/([A-Z])\./,'\1')
答案 1 :(得分:5)
您应该使用positive look behind来匹配它,并将其替换为空。
MyText = "William SR. won the race."
MyText = MyText.gsub(/(?<=[A-Z])\./, '')
以下是Rubular的example。如果您知道要进行替换而不是复制,则可以使用gsub!
。