[R]ファイル名を示す文字列から拡張子を削除する
ファイル名を文字列型ベクトルに格納して、gsub関数で正規表現を使えば簡単に削除できる。以下、例。
> s <- c("abc", "abc.def", "abc.def.ghi")
> gsub("\\.[^\\.]+$", "", s)
[1] "abc" "abc" "abc.def"
「¥¥.」は「.」(ピリオド)一文字を表現している。「.」はパターンを表す書式に使用されるため、それを避けるために前に「¥」を付けている。この付けた「¥」自体もパターンを表す書式に使用する文字のため、「¥」の前にもさらに「¥」を付けている。
「[^¥¥.」+」とは、ピリオド以外の文字を一つ以上ということ。このように指定しないと、含まれるピリオドより右側すべての文字が削除されてしまう。
« [R]バイナリファイルを作成する | トップページ | [R]正規表現を使用してtibbleから条件に一致する行を抜き出す »
「R(正規表現)」カテゴリの記事
- [R]正規表現でIPv4によるIPアドレス表記の文字列かどうか判定する(2026.02.26)
- [R]文字列が指定の正規表現パターンとマッチするかどうか調べる(2025.12.23)
- [R]正規表現を使用して文字列型ベクトルから特定の文字列を含む要素を取り出す(2025.12.06)
- [R]特定の文字列で始まる(始まらない)文字列を抽出する(2025.11.09)
- [R]パターンにマッチするか否かを論理値で返す(2024.12.25)
« [R]バイナリファイルを作成する | トップページ | [R]正規表現を使用してtibbleから条件に一致する行を抜き出す »

コメント