如何使用PHP语言在字符串上检测日语字符?

Ric*_*uel 2 php


给定以下3个字符串,

字符串1(日语和其他语言单词):
“ ???????????????·??? fm ???和其他单词”

字符串2(葡萄牙语):
“ istoéum teste”。

字符串3(英语):
“这是测试”

如何仅使用PHP识别字符串1?

提前。

编辑:
由于此主题处于搁置状态,我将尝试满足stackoverflow的要求:

“这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。更详细地描述您的问题,或者在问题本身中包含一个最小的例子。” –匿名,jeroen,汉基?潘基

我有一个问题... :(
我的问题是我在评论系统网站上收到很多垃圾邮件。我注意到其中大多数都带有日语字符。我的老板特别指出我不能使用任何验证码机制。

所以...。我唯一能想到的就是检测日语字符...就像我在标题中提到并在帖子中描述的那样!

更好?
干杯! :)

Ali*_*ani 6

http://ideone.com/s8Mzum

我在Ideone上尝试过此方法,虽然可以,但是未经过全面测试。

   <?php

$word = "???????????????·??? fm ???";
$word2 = "This is the english language";

function isJapanese($lang) {
    return preg_match('/[\x{4E00}-\x{9FBF}\x{3040}-\x{309F}\x{30A0}-\x{30FF}]/u', $lang);
}

var_dump(isJapanese($word)); //returns 1
var_dump(isJapanese($word2));//returns 0
Run Code Online (Sandbox Code Playgroud)

  • 下选民可以解释原因吗?我做了很大的编辑。 (2认同)