0

文字列からすべてのハッシュ タグを取得して配列に格納するスクリプトがあります。次に何が起こるかは、文字列にハッシュ タグがあるかどうかによって決まります。テスト対象の文字列に実際にハッシュ タグがある場合にのみコードを実行する if ステートメントを作成するにはどうすればよいですか。

これが私が試したことです:

<?php

$string= "Went for an awesome bike";

echo $string . "</br></br>";

preg_match_all('/#(\w+)/',$string, $matches);


if ($matches != 0) {

    foreach ($matches[1] as $tag) {

        echo $tag . "</br></br>";

    }

}
else {

    echo "There are no tags here!!";

}


?>

失敗メッセージをエコーアウトすることはできませんか? 私は何が間違っているのでしょうか?

ありがとう!

4

4 に答える 4

1

確認する最も簡単な方法は、行を変更することです

if ($matches != 0) {

の中へ

if ($matches[1]) {

文字列に一致するものがあるかどうかを確認する (配列が空の場合は false になるため)

検証している場合は、var_dump($matches);preg_match_all()が返されるかを確認できます

おまけとして、私が使用しているテストサイトで正規表現を確認できます

于 2013-05-02T20:22:42.247 に答える