这个问题在这里已有答案:
假设我有这段文字:
Saturday and Sunday and Monday and Tuesday and Wednesday and Thursday and Friday are days of the week.
我希望除了最后一个 and
之外的所有内容都用逗号代替:
Saturday, Sunday, Monday, Tuesday, Wednesday, Thursday and Friday are days of the week.
在正则表达式中有一种简单的方法吗?据我所知,正则表达式中的 replace
方法一直替换字符串 .
2 回答
str.replace()方法有一个
count
参数:然后,使用str.count()检查字符串中有多少
and
然后-1
(因为你需要最后的and
):演示:
如果你想要一个正则表达式解决方案,你可以匹配所有
and
,后面跟着另一个字符串 .(?=
...)
是一个先行,它确保在字符串中稍后匹配,而不在实际匹配中包含它(因此也不在替换中) . 这有点像比赛的条件 .