I am working on a simple java program that can take a string like this:
βοΈπ«βSTOPβπ«βοΈ π«You've violated πΏπ the law!π« ππBut now...ππ πYou
and replace each emoji with the appropriate java character. (I'm not sure what to call them).
Here is an example:
The automobile emoji: π would be replaced with: "\uD83D\uDE97".
This allows me to have a string such as
"I am a car: \uD83D\uDE97"
in Java source code, and let it look like this:

So the question is, how can I automatically find a certain emojji in a string (for example, find every red car emoji in a string) and replace it with its appropriate "Java character"?
EDIT ONE:
Nevermind, turned out to be really simple. I could just do
string.replace("π","Java code");
You should use the following method for this purpose:
public String replaceAll(String regex, String replacement)
See documentation.
Example:
source
.replaceAll("π", "value")
.replaceAll("π«", "nextValue")
A nicer way to do it is to build a map with your existing chars, and do the replacement in a for each:
Map<String, String> mappedChars = new HashMap<>();
mappedChars.put("A", "valueForA");
mappedChars.put("B", "valueForB");
AtomicReference<String> value = new AtomicReference<>("A and B and C");
mappedChars
.entrySet()
.stream()
.forEach(entry -> value.getAndUpdate(current -> current.replaceAll(entry.getKey(), entry.getValue())));
//valueForA and valueForB and C
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With