匹配提示与unicode

时间:2014-09-19 23:30:17

标签: javascript

我正在尝试编写一个提示输入字符串的脚本,并警告输入的字符串是否包含反斜杠或者泰卢固语" ddha" (U + 0C22)。

这是我的代码:

string = prompt("Enter a string")
emoji = fixFromCharCode(U+0C22); 

if (string === "/") {
    alert("There is a / in the string");
} else (string === emoji) {
    alert("There is a " + emoji + " in the string")
}

我收到了一个"意外的令牌ILLEGAL"错误。我怎样才能将提示与Unicode匹配?

2 个答案:

答案 0 :(得分:1)

emoji = fixFromCharCode(U+0C22);替换为emoji = fixFromCharCode("\u0c22");

答案 1 :(得分:0)

试试这个:

string = prompt("Enter a string")
emoji = String.fromCharCode(3106);  // decimal value of 0C22 

if (string === "/") {
    alert("There is a / in the string");
} else if(string === emoji) {
    alert("There is a " + emoji + " in the string")
}

注意:已编辑将字符代码更改为十进制表示。

另请注意,您的文字描述了寻找反斜杠,但您的代码会检查正斜杠。

还有......你的代码以上面的固定形式出现,检查一个完全等于“/”或“emoji”的单字符串。你的问题陈述说,“包含”。所以,如果你想要检测类似的东西,“这个字符串中有一个/”,还需要做更多的工作。我想这会做到这一点:

string = prompt("Enter a string")
emoji = String.fromCharCode(3106);  // decimal value of 0C22 

if (string.indexOf("/") > -1) {     // Checks for "contains" instead of equals
    alert("There is a / in the string");
} else if (string.indexOf(emoji) > -1) {
    alert("There is a " + emoji + " in the string")
}