3

わかりました、バカなのか月曜日なのかわかりません。

実はとても簡単です。テキストを入力するテキストボックスがあります。単語はハッシュ(#)でマークされ、その文のハッシュタグとしてDBに保存されます。

さて、私の機能は次のようになります。

    public function getHashtag($text)
{
    print_r($text);
    preg_match_all('/(#\w+)/', $text, $hashTag);
    print_r($hashTag);
    die();
    if (isset($hashTag[0][0])) {
        $hashTag = $hashTag[0][0];
        return $hashTag;
    } else {
        return '';
    }

}

print_rは単なるデバッグ用のものです。私が達成したいのは、ハッシュで単語を取得することだけです。誰かがàèéまたは他の文字を含むフランス語の単語を入力した場合を除いて、うまく機能します。その後、出力は最初の特殊文字で停止します。

#dfsdfaàèé asda sda sd asd aArray ( [0] => Array ( [0] => #dfsdfa ) [1] => Array ( [0] => #dfsdfa ) )

何か案は?:D

4

1 に答える 1

7

この式を使用するだけ/(#[^\s[:punct:]]+)/です。

「Aに加えて、空白または句読点ではない少なくとも1つの文字」と読みます。#

[:punct:]POSIX文字クラスの1つです。

于 2012-07-30T09:51:26.423 に答える