最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How can I check if variable contains ChineseJapanese characters? - Stack Overflow

programmeradmin3浏览0评论

How do I check if a variable contains Chinese or Japanese characters? I know that this line works:

if (document.body.innerText.match(/[\u3400-\u9FBF]/))

I need to do the same thing not for the document but for a single variable.

How do I check if a variable contains Chinese or Japanese characters? I know that this line works:

if (document.body.innerText.match(/[\u3400-\u9FBF]/))

I need to do the same thing not for the document but for a single variable.

Share Improve this question edited Jun 26, 2012 at 11:35 user229044 239k41 gold badges344 silver badges346 bronze badges asked Jun 26, 2012 at 11:34 waivywaivy 1371 gold badge2 silver badges8 bronze badges 3
  • 4 if (variable.match(/[\u3400-\u9FBF]/)) ? – Esailija Commented Jun 26, 2012 at 11:35
  • You can apply .match to any string variable, not just document.body.innerText. – user229044 Commented Jun 26, 2012 at 11:35
  • Thank you. What I'm trying to do is to have the user select a portion of text from the document and assign it to my variable and after this check if the variable contains any Chinese character. I'm using var sel = window.getSelection() and then if (sel.match(/[\u3400-\u9FBF]/)) but it won't work. Strange thing is that if e.g I manually set sel = 漢字 it works fine but if I try to get it with window.getSelection() it won't – waivy Commented Jun 26, 2012 at 12:15
Add a ment  | 

2 Answers 2

Reset to default 8

.match is a string method. You can apply it to anything that contains string. And, of course, to arbitrary variable.

In case you have something that is not string, most objects define .toString() method that converts its content to some reasonable stringified form. When you retrieve selection from page, you get selection object. Convert it to string and then use match on it: sel.toString().match(...).

afaik you can to the same with a variable... document.body.innerText just returns the text of the body. Therefore you can just do

myvar.match(...)

Here's an example: http://snipplr./view/15357/

发布评论

评论列表(0)

  1. 暂无评论