私は下のコードから得た単語のリストを持っています。文字列の最後に省略記号を削除するには
このリストの文字列の中には、削除したい最後に省略記号があります。ここで私は、このコードにはない
gsub("[…]", "", tags_vector[5])
#[1] "#b…"
、私はコードを使用して、
gsub
を使用して、この第五要素から省略記号を削除しようとしています
tags_vector[5]
#[1] "#b…"
class(tags_vector[5])
#[1] "character"
このリストの5番目の要素を印刷すると、そのクラス私は "#b ..."を出力します。しかし、私が直接、第五要素の値を入れて同じコードで、それは
gsub("[…]", "", "#b…")
#[1] "#b"
は私も変数x1
にtags_vector[5]
の値を入れて試してみましたgsub()
コードでそれを使用しようとしたが、以下のように正常に動作し、それまだ働いていない。
'tags_vector'を提供できますか?それは単純な 'x < - " #b ... "'で私のために働くので、あなたのベクトルと関係していると思います。 – LAP
https://ideone.com/61hWhtを参照してください。うまくいくようです。ところで、省略記号はASCIIではないので、あなたはstringr 'str_replace_all'を試してみることができます:' library(stringr) ' - >' str_replace_all(tags_vector [5]、 "..."、 "") ' –
実際にはUnicode問題。 tags_vector [5]の印字がすでに文字を変更している可能性があります(例えば、省略記号には2つの異なるユニコードがあります:[2026](http://www.fileformat.info/info/unicode/char/2026/index。 htm)と[22EF](http://www.fileformat.info/info/unicode/char/22EF/index.htm)を参照してください)。これはまた、直接gsubが機能する理由を説明します。あなたは 'gsub(gsub(" [#b] "、" "、tags_vector [5])、" "、tags_vector [5])'を試すことができますか? – takje