如果string是代词,则返回true的函数

时间:2013-06-05 21:34:33

标签: php string

我正在尝试构建一个函数,如果作为参数的给定字符串是代词,则返回true。

我认为这样做的一个好方法是检查它是否以大写/大写字母开头。

如果你知道如果有什么东西是代词,那么告诉我的更好。

但是,为了检查第一个字母是大写/大写字母,我该怎么办呢。

我知道string[0]会给我第一个字母,但我该如何比较它以检查它是否是字母表中的任何大写/大写字母?

我现在的代码是

function isPronoun($str){
    $result = false;
    if($str[0]===/*capital letter*/){
        $result=true;
    }
    return $result;
}

3 个答案:

答案 0 :(得分:3)

诸如“Mark”,“London”或“Betelgeuse”之类的专有名词也以大写字母开头,句子的第一个单词也是如此,而“he”或“it”是以小写字母开头的代词

要识别代词,您需要一个语言解析器,例如Brill Parser

答案 1 :(得分:0)

尝试使用正则表达式

function isPronoun($str){
         return ereg("^[A-Z]", $str);
}

答案 2 :(得分:0)

我认为你的意思是“正确的名词”,而不是代名词。代词就像“我”,“你”......

无论如何,尝试这样的事情:

$is_proper_noun = preg_match("(^[A-Z]\w+$)",$word);

请注意,您可以更详细地说明这一点,例如:

"(^(?:Ma?c|O')?[A-Z][a-z]+$)"