我有一个如下字符串: 14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27.0
以下正则表达式提取以点和数字结尾的最后一部分。我想提取除了那部分之外的所有内容,并且似乎无法找到一种方法来反转正则表达式(使用^)没有帮助:
> s <- '14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27.0'
> str_extract(s, '(\\.[0-9]{1})$')
[1] ".0"
我希望输出为:
[1] 14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27
为了进一步澄清,我希望它按原样返回字符串,如果它不以点和一位数结尾。
以下示例:
> s <- '14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27'
> str_extract(s, someRegex)
[1] "14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27"
> s <- '14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27.1'
> str_extract(s, someRegex)
[1] "14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27"
> s <- '14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27.4'
> str_extract(s, someRegex)
[1] "14ed0d69fa2.bbd.7f5512.filter-132.21026.55B67C8E27"
答案 0 :(得分:1)
答案 1 :(得分:1)
一个选择是替换最后一位,
Tkinter.TclError
答案 2 :(得分:0)
str_extract(s, ([\w ]+(?:\.|\-)){7})
然后你可以访问返回的字符串到它的lenght-1,它会给你所需的输出!
PS:您可能必须使用转义字符。