2017-10-16 1 views
2

Dire que je veux imprimer degrés Celsius dans R, je pourrais utiliser unicode comme ceci:Pas d'espace entre le caractère unicode et le caractère suivant

print("\U00B0 C") 
[1] "° C" 

Notez, cependant, l'espace. Je ne veux pas là, donc je le supprimer:

print("\U00B0C") 
[1] "ଌ" 

De toute évidence, 00B0C est unicode pour un caractère très différent! Vraisemblablement, s'il y a un caractère alphanumérique après l'Unicode, il est compréhensible qu'il interprète cela comme faisant partie de l'Unicode. Je pourrais utiliser la pâte ou quelque chose de similaire à ceci:

print(paste("\U00B0","C", sep = "")) 
[1] "°C" 

mais est-il une façon plus concise pour indiquer que l'unicode est terminée et je suis maintenant juste en utilisant des lettres régulières?

Répondre

2

Utilisez minuscules u:

print("\u00B0C") 
+0

brillant! Et pourquoi ça marche? Est-ce qu'un caractère en minuscule indique que seulement les 4 caractères alphanumériques suivants seront unicode? – Lyngbakr

+1

Je le crois. "De plus, la fonction comprend les suivants: \ uXXXX (4 chiffres hexadécimaux), \ UXXXXXXXX (8 chiffres hexadécimaux), \ xXX (1-2 chiffres hexadécimaux), ... " –