我想創建一個PHP REGEX匹配,如果任何單詞以'#'開始就像'#ball'一樣。我試過這個PHP正則表達式 - 尋找多個字開始像##'''#''
preg_match_all('/(#\w+)/u', $text, $matches);
但它返回包含'#'的所有單詞,如'pin#ball'。
我想創建一個PHP REGEX匹配,如果任何單詞以'#'開始就像'#ball'一樣。我試過這個PHP正則表達式 - 尋找多個字開始像##'''#''
preg_match_all('/(#\w+)/u', $text, $matches);
但它返回包含'#'的所有單詞,如'pin#ball'。
試試這個:
$sData = '#pin all#foo #bar';
preg_match_all('/(^|\s+)#([a-zA-Z]+)/', $sData , $rgMatches);
//var_dump($rgMatches[2]);
您需要使用'preg_match_all'捕獲所有比賽。 –
just /#[a-zA-Z] + /刪除前面的空格 – Elpy
@VictorStanciu - 謝謝。之前沒有注意到。編輯。 –
試試這個正則表達式。
preg_match_all('/(?!\b\s*)#.*\b/', $text, $matches);
谷歌「#標籤的正則表達式」 - 拳頭resut:http://stackoverflow.com/questions/1563844/best-hashtag-regex這是.NET,但嘿它的正則表達式 – DanFromGermany