R: Find the last dot in a string

后端 未结 4 1073
一整个雨季
一整个雨季 2020-12-08 04:20

In R, is there a better/simpler way than the following of finding the location of the last dot in a string?

x <- \"hello.world.123.456\"
g <- gregexpr(         


        
4条回答
  •  忘掉有多难
    2020-12-08 04:45

    Does this work for you?

    x <- "hello.world.123.456"
    g <- regexpr("\\.[^\\.]*$", x)
    g
    
    • \. matches a dot
    • [^\.] matches everything but a dot
    • * specifies that the previous expression (everything but a dot) may occur between 0 and unlimited times
    • $ marks the end of the string.

    Taking everything together: find a dot that is followed by anything but a dot until the string ends. R requires \ to be escaped, hence \\ in the expression above. See regex101.com to experiment with regex.

提交回复
热议问题