如何将大写字母后面的句号替换为只带大写字母的句号?

  • 本文关键字:大写字母 替换 ruby regex
  • 更新时间 :
  • 英文 :


任何字符串都包含一个大写字母后面跟着一个句号,我希望用大写字母替换大写字母和句号。

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**]

我可以匹配大写字母后面的句号,但是我不知道如何用句号前面的大写字母替换我的匹配

另一种不需要查找和使用捕获组的方法:

MyText = MyText.gsub(/([A-Z])./,'1')

你应该在后面使用正面的外观来匹配它,并将其替换为none

MyText = "William SR. won the race."
MyText = MyText.gsub(/(?<=[A-Z])./, '')

这是一个关于Rubular的例子。

如果你知道你想在适当的地方做替换,你可以使用gsub!,而不是复制。

最新更新