Alphanumeric tools::file_path_sans_ext() (PR#14050)

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Alphanumeric tools::file_path_sans_ext() (PR#14050)

arnima-2
The file_path_sans_ext() function in the 'tools' package does not handle
alphanumeric file extensions correctly:

   require(tools)
   file_path_sans_ext("song.txt")  # song, correct
   file_path_sans_ext("song.mp3")  # song.mp3, wrong

The help page states that "only purely alphanumeric extensions are
recognized", which I had expected. To fulfill this, the function body
should be

   sub("([^.]+)\\.[[:alnum:]]+$", "\\1", x)

instead of the current definition:

   sub("([^.]+)\\.[[:alpha:]]+$", "\\1", x)

Thanks,

Arni

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Reply | Threaded
Open this post in threaded view
|

Re: Alphanumeric tools::file_path_sans_ext() (PR#14050)

Kurt Hornik-5
>>>>> arnima  writes:

> The file_path_sans_ext() function in the 'tools' package does not handle
> alphanumeric file extensions correctly:

>    require(tools)
>    file_path_sans_ext("song.txt")  # song, correct
>    file_path_sans_ext("song.mp3")  # song.mp3, wrong

> The help page states that "only purely alphanumeric extensions are
> recognized", which I had expected. To fulfill this, the function body
> should be

>    sub("([^.]+)\\.[[:alnum:]]+$", "\\1", x)

> instead of the current definition:

>    sub("([^.]+)\\.[[:alpha:]]+$", "\\1", x)

> Thanks,

> Arni

Thanks, fixed now.

Best
-k

> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel