I have a text box and only want the user to be able to type in emoji. Is there a test to check if a character is an emoji?
Yes, you can check if a character or a full string (text) if contains an emoji.
Just execute this JavaScript in the invisible web-view:
window.AppInventor.setWebViewString(/\p{Extended_Pictographic}/u.test('TEXT'));
And then use a block called "WebViewStringChangeEvent".
You should have to check conditions like this:
And if you want to remove emojis refer to this topic:
and navigate to the section called "Filter emojis".
EmojiCheck.aia (1.9 KB)
Thank you! I'll be attempting this tomorrow, and will let you know how it goes.
Also, I don't want to remove emoji; I want to remove everything EXCEPT emoji. I think this solution should work well, though!
Hello! Sorry to bother you again.
Your code to remove emojis works brilliantly, but I need to do the opposite: remove everything except emoji. I tried searching on the internet for how to do that, or for how to negate a regex (I think you used a regex?) but what I tested did not work. I'm not familiar with JavaScript or regexes at the moment.
How should I change the replace command to remove everything except for emoji?
Thanks!
First split the text into a character array then you loop over each character and if it's an emoji then you append it into a new text variable if it's not emoji, then don't append it. Simple.
Lemme know if you're stuck somewhere ![]()
I'll research how to split the text, and will try this later! Thanks 
If I get stuck I'll send a reply.
I think I got it!
I cant split the text into a character array, because some characters which are a single grapheme contain multiple Unicode characters.
But even if I can't, the grapheme-splitter library can!
I added the library into my project, and can use it to get a proper character array, then use the process you described.
If I have any problems I'll ask them, but I think I got it now. As a newer App Inventor user, thank you for showing me all these tools!
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.

