記号の後に単語を取得しようとしています#
したがって、次の文字列はすべて返されますstack_overflow
#stack_overflow
hello #stack_overflow
blahblahblah#stack_overflow
パターンはどのように見えますか?
記号の後に単語を取得しようとしています#
したがって、次の文字列はすべて返されますstack_overflow
#stack_overflow
hello #stack_overflow
blahblahblah#stack_overflow
パターンはどのように見えますか?
\w
「単語」文字に一致するため、次のようになります。
'/#\w+/'
\w
には、小文字と大文字a
からz
、数字、およびアンダースコアが含まれます。さらに必要な場合は、文字セットを使用してください。
そして、グループに入れれば捕獲できます。これがデモです。
このコードを試してください:
$content = '#stack_overflow
hello #stack_overflow
blahblahblah#stack_overflow';
preg_match_all('/\#(?P<name>[a-z_]+?)/Uim', $content, $matches, PREG_SET_ORDER);
foreach ($matches as $match) {
var_dump($match['name']);
}
それはあなたを得るでしょう
string(14) "stack_overflow"
string(14) "stack_overflow"
string(14) "stack_overflow"