In one of my projects String are send to a old teletext system that's not capable of showing any modern characters. (Teletext was created in the 1970's). Since content that's send into that system is coming from external sources (web parsing, rss feeds, etc.) there is no control over the incoming data. For years I'm using a long list of all the characters I ever encountered that are not allowed. It's working well, but I think my solution is ugly and not efficient.
What would be ways to improve my solution to make it more efficient?
public static String removeSpecialCharactersAndHTML(String text) {
String result = text;
result = result.replace(">", ">");
result = result.replace("<", "<");
result = result.replace("&", "&");
result = result.replace(""", "\"");
result = result.replace(" ", " ");
result = result.replace("&", "&");
result = result.replace("]]>", "");
result = result.replace("‘", "'");
result = result.replace("’", "'");
result = result.replace("`", "'");
result = result.replace("´", "'");
result = result.replace("“", "\"");
// .....
result = result.replace("”", "\"");
result = result.replace("³", "3");
result = result.replace("²", "2");
return result
}