gpt4 book ai didi

regex - 删除最后一次出现的字符

转载 作者:行者123 更新时间:2023-12-03 15:13:32 26 4
gpt4 key购买 nike

question came across talkstats.com today其中发布者想要使用正则表达式(不是 strsplit )删除字符串的最后一段。我尝试这样做,但没有成功。

N <- c("59.22.07", "58.01.32", "57.26.49")

#my attempts:
gsub("(!?\\.)", "", N)
gsub("([\\.]?!)", "", N)

我们如何删除字符串中的最后一个句点以获得:
[1] "59.2207" "58.0132" "57.2649"

最佳答案

也许这读起来更好一点:

gsub("(.*)\\.(.*)", "\\1\\2", N)
[1] "59.2207" "58.0132" "57.2649"

因为贪心,第一个 (.*)将匹配所有内容直到最后 .并将其存储在 \\1 .第二个 (.*)将匹配最后一个 . 之后的所有内容并将其存储在 \\2 .

从您可以替换 \\. 的意义上来说,这是一个通用的答案。使用您选择的任何字符删除该字符的最后一次出现。只需更换一次!

你甚至可以这样做:
gsub("(.*)\\.", "\\1", N)

关于regex - 删除最后一次出现的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14529473/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com