2016-12-13 6 views
0

ドイツ語のä, ü, ...\\"a, \\"u, ...に置き換えます。LaTex用にumlauteをダブルバックスラッシュに置き換えます。

例:

Ägypten\\"Agyptenに変換されるべき文字列。 しかしgsubは私をさせません。

gsub('Ä','\\"A','Ägypten') 
> [1] "\"Agypten" 
gsub('Ä','\\\"A','Ägypten') 
> [1] "\"Agypten" 
gsub('Ä','\\\\"A','Ägypten') 
> [1] "\\\"Agypten" 

ところで:私はknitr, tikZ, and Xetexのためにこれを必要とします。残念ながら、UTF8ソリューションは私のために実行可能ではありません。

+0

おそらくラテックスでこの問題を処理する必要があります。 – Roland

答えて

0

あなたはリテラル文字列の置換に、あなたは1つのリテラルバックスラッシュを表すために2 \秒が必要であることを念頭に、ここでリテラル文字列置換を使用することがあります。

> s <- gsub('Ä','\\\\"A','Ägypten', fixed=TRUE) 
> cat(s) 
\\"Agypten> 

あなたが正規表現の置換を使用する場合は、1つのニーズを置き換えパターン文字列リテラル(つまり2つのリテラルのバックスラッシュ)に4つのバックスラッシュを使用して1つのリテラルバックスラッシュを置き換えます。

関連する問題