Menu
Coddy logo textTech

substr()による部分文字列

CoddyのRジャーニー「ロジックとフロー」セクションの一部。レッスン 1/64。

substr(x, start, stop)は、xのstart位置からstop位置までの文字を返します。両方の位置を含みます。位置はベクトルのインデックスと同様に、1から始まります。

word <- "programming"
print(substr(word, 1, 7))
print(substr(word, 4, 6))

出力:

[1] "program"
[1] "gra"

末尾から文字を取り出すには、nchar() を使って位置を計算します。

code <- "INV-2024-0042"
n <- nchar(code)
print(substr(code, n - 3, n))

出力:

[1] "0042"

末尾を超えたstopは最後の文字までに切り詰められ、startがstopより大きい場合は空の文字列になります。

print(substr("cat", 2, 10))
print(substr("cat", 3, 1))

出力:

[1] "at"
[1] ""

substr() は文字ベクトルのすべての要素に一度に作用します:

days <- c("Monday", "Tuesday", "Wednesday")
print(substr(days, 1, 3))

出力:

[1] "Mon" "Tue" "Wed"

substr()への代入は、文字をその場で上書きします。文字列の長さは変わりません:

id <- "user-0000"
substr(id, 6, 9) <- "1234"
print(id)

出力:

[1] "user-1234"
challenge icon

チャレンジ

簡単

short_code(city)を完成させ、cityの最初の3文字を大文字で返すようにしてください。londonの場合はLONを返します。

提供されたコードは入力から都市名を読み取り、返された値を単独の行に出力します。

自分で試してみよう

short_code <- function(city) {
  # ここにコードを書いてください
  ""
}

# 提供された入出力コード:そのままにしておいてください
input <- suppressWarnings(readLines(file("stdin")))
cat(short_code(input[1]), sep = "\n")
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ロジックとフローのすべてのレッスン

自分で練習してみよう: Rオンラインコンパイラ