Simon
Simon

Reputation: 2538

Is it possible to have an emoji-only text input?

I'm building an Ionic2 app and one of my text fields needs to be an emoji-only field.. to make my situation a little harder, the input field can only be 1 emoji long.

From what I know of emojis, some are considered 2 characters, and some are 1, which makes me wonder how I can force only 1 emoji length in a text input.

Is this possible? Essentially just a text field that only accepts 1 emoji..

Any feedback would be great. Thank you!

Upvotes: 2

Views: 1751

Answers (1)

gotnull
gotnull

Reputation: 27224

Since you haven't yet provided your own code I'm not going to answer your whole question.

You could start off by using a regular expression that only allows characters and then modify it using something like the emoji regex library provided below.

var val = "🐬";
if (val.match(/[^a-zA-Z]/g)) { // NOTE: will also match only characters
  console.log(val);
} else {
  console.log("Only characters allowed.")
}

You could also try a library like the following that's a regular expression to match all Emoji-only symbols as per the Unicode Standard. https://mths.be/emoji-regex

There's also a great article on Optimizing RegEx for Emoji.

Upvotes: 3

Related Questions