Advertisement
Guest User

Untitled

a guest
Sep 26th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. In[31]:= ToUpperCase@{"éàÇœßþσς", "ijķnjđӽծ", "ÿ"}
  2. Out[31]= {"ÉÀÇŒSSÞ∑∑", "ijķnjđӽծ", "Y"}
  3.  
  4. Needs["JLink`"];
  5. ClearAll[toUpperCase];
  6. toUpperCase[s_String] :=
  7. JavaBlock[JavaNew["java.lang.String", s]@toUpperCase[]];
  8.  
  9. unicodeData = StringSplit[#, ";"] & /@
  10. StringSplit[Import["ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt"], "n"];
  11. upperCaseData = (FromDigits[#, 16] & /@ # &) /@
  12. Select[unicodeData, (Length[#] > 12) && (StringLength[#[[13]]] > 0) &][[;; , {1, 13}]];
  13.  
  14. unichar[s_] := FromCharacterCode[FromDigits[s, 16], "Unicode"];
  15. upperCaseChar[i_] := Module[{r},
  16. r = Select[upperCaseData, #[[1]] == i &];
  17. Return[If[Length[r] > 0, FromCharacterCode[r[[1, 2]]], FromCharacterCode[i]]];
  18. ]
  19. upperCase[s_] := StringJoin[upperCaseChar /@ ToCharacterCode[s, "Unicode"]];
  20.  
  21. In[127]:= upperCase["foéàçÿœÆijķnjđӽծÿ"]
  22. Out[127]= "FOÉÀÇŸŒÆIJĶNJĐӼԾŸ"
  23.  
  24. Needs["MachineLearning`"];
  25. ToUpperCaseUnicode[{"éàÇœßþσς", "ijķnjđӽծ", "ÿ"}]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement