首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将单词与@符号匹配并忽略

问将单词与@符号匹配并忽略
EN

Stack Overflow用户
提问于 2015-02-27 20:48:11
回答 1查看 47关注 0票数 0

我正在编写一个脚本,它贯穿用户注释,将注释分解为单个单词,并将这些单词添加到mysql中的一个表中。原因是为了找出评论中使用最多的词。

此外,在添加到表中之前,我正在将这些单词与要忽略的单词列表进行匹配。

我无法理解的是,如何也忽略任何以@符号作为单词中字符的单词。

下面是我目前的情况,除了匹配@之外,它的工作原理是

代码语言:javascript
复制
$added_count=0;
$words_to_forget = array();
$forget_words = "SELECT forget FROM word_bank_forget";
    $result = $conn->query($forget_words) or die($conn->error.__LINE__);    
        while($row = $result->fetch_assoc())
            {
                $words_to_forget[] = $row['forget'];
            }

    $survey_words = "SELECT comments,clinic_id,sid FROM survey WHERE word_bank='0'";
        $result = $conn->query($survey_words) or die($conn->error.__LINE__);    
            while($row = $result->fetch_assoc())
                {
                    $comments = $row['comments'];
                    $clinic_id = $row['clinic_id'];
                    $sid = $row['sid'];
                    $wordChunks = explode(" ", $comments);
                    for($i = 0; $i < count($wordChunks); $i++){
                        $broken_word = strtolower($wordChunks[$i]);
                        $broken_word = str_replace(array('.', ''), '' , $broken_word);
                        $broken_word = str_replace(array(',', ''), '' , $broken_word);
                        if ($broken_word != '' ){
                            if (!in_array($broken_word, $words_to_forget)) {
                                mysql_query("INSERT into word_bank (word,clinic_id) values ('$broken_word','$clinic_id')");
                                $added_count++;
                                }
                        mysql_query("UPDATE survey SET word_bank='1' WHERE sid='$sid'");
                        }
                    }
                }

我试过用正则表达式,但不能让它起作用。我可以将@符号与/\@/匹配,但如果匹配,则不能告诉php忽略这个单词。

也许一些类似的东西(不起作用):

代码语言:javascript
复制
$pattern = '/\@/';
if !preg_match($pattern, $broken_word){

}

任何帮助都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-27 20:55:04

if (strpos($word, '@') !== false)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28773999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档