今私はコードを持っています:
$msgs = preg_replace('/(?<=^|\s)@([a-z0-9_]+)/i', '$1', $msg);
そう言いましょう
$msg = "@Admin Hello my friends";
上記のコードは機能しますが、タグ付けされた名前だけを取得する必要があります! タグ付けされたすべての人、「管理者」だけを取得する必要があります。それ、どうやったら出来るの?
今私はコードを持っています:
$msgs = preg_replace('/(?<=^|\s)@([a-z0-9_]+)/i', '$1', $msg);
そう言いましょう
$msg = "@Admin Hello my friends";
上記のコードは機能しますが、タグ付けされた名前だけを取得する必要があります! タグ付けされたすべての人、「管理者」だけを取得する必要があります。それ、どうやったら出来るの?
できるよ:
$msgs = preg_replace('/(?<=^|\s)@(\w+).*$/', '$1', $msg);
また
if (preg_match('/(?<=^|\s)@(\w+)/', $msg, $match)) {
$msgs = $match[1];
}
1 行に複数指定できる場合は、 preg_match_all@
を使用します。
preg_match_all('/(?<=^|\s)@(\w+)/', $msg, $match)