[解決済み] 文字列の先頭文字の取得と削除
2022-08-15 13:32:52
質問
文字列を使って、各文字に異なる値を割り当てて2次元のウォークを行いたいと思っています。 私は、文字列の最初の文字を「ポップ」して、それを使用し、残りの文字列について繰り返すことを計画していました。
どうすればこのようなことを実現できるのでしょうか?
x <- 'hello stackoverflow'
こんなことができるようになりたいです。
a <- x.pop[1]
print(a)
'h'
print(x)
'ello stackoverflow'
どのように解決するのですか?
参照
?substring
.
x <- 'hello stackoverflow'
substring(x, 1, 1)
## [1] "h"
substring(x, 2)
## [1] "ello stackoverflow"
を持つということは
pop
に格納されているデータを更新する副作用があります。
x
は、まさにオブジェクト指向プログラミングの概念です。 ですから
pop
関数を定義するのではなく、文字ベクトルを操作するために
参照クラス
を使って
pop
メソッドで指定します。
PopStringFactory <- setRefClass(
"PopString",
fields = list(
x = "character"
),
methods = list(
initialize = function(x)
{
x <<- x
},
pop = function(n = 1)
{
if(nchar(x) == 0)
{
warning("Nothing to pop.")
return("")
}
first <- substring(x, 1, n)
x <<- substring(x, n + 1)
first
}
)
)
x <- PopStringFactory$new("hello stackoverflow")
x
## Reference class object of class "PopString"
## Field "x":
## [1] "hello stackoverflow"
replicate(nchar(x$x), x$pop())
## [1] "h" "e" "l" "l" "o" " " "s" "t" "a" "c" "k" "o" "v" "e" "r" "f" "l" "o" "w"
関連
-
[解決済み] 文字列リテラルの前にある'b'文字は何を意味するのでしょうか?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] 文字列の単語を反復処理するにはどうすればよいですか?
-
[解決済み] どうすれば、文字列中のリテラルな中抜き文字を印刷し、また.formatを使用することができるのでしょうか?
-
[解決済み] 文字列が空かどうかを確認する方法は?
-
[解決済み] Javascriptで文字列の1文字目を削除する
-
[解決済み] Pythonで文字列が繰り返されるかどうかを判断するにはどうすればよいですか?
-
[解決済み】大文字と数字を含むランダムな文字列の生成
-
[解決済み】文字列中のある文字の出現回数をカウントする
-
[解決済み】Swift Stringで文字のインデックスを検索する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] OCaml - intをstringに変換する方法は?
-
[解決済み] OCamlでcharから文字列に変換する
-
[解決済み] strposではなく、単語が見つかったときのStataフラグ
-
[解決済み] Tclスクリプトで文字列の特定の文字を置き換えるには?
-
[解決済み] 辞書的順序とは何ですか?
-
[解決済み] Luaで文字列の中にマッチするテキストがあるかどうかを確認するには?
-
[解決済み】Java7で文字列からパスを作成する。
-
[解決済み] Golangの文字列のインデックスを作成するには?
-
[解決済み] XSLTで文字列を大文字または小文字に変換するには?
-
[解決済み] 複数行の文字列をカンマで区切られた1つの文字列に変換する