我可以從一個主題標籤如何過濾字符串以提取符號後的文本?
function gethashtags($text)
{
//Match the hashtags
preg_match_all('/(^|[^a-z0-9_])#([a-z0-9_]+)/i', $text, $matchedHashtags);
$hashtag = '';
// For each hashtag, strip all characters but alpha numeric
if(!empty($matchedHashtags[0])) {
foreach($matchedHashtags[0] as $match) {
$hashtag .= preg_replace("/[^a-z0-9]+/i", "", $match).',';
}
}
//to remove last comma in a string
return rtrim($hashtag, ',');
}
所以在我的後處理文件過濾文本函數,變量使用gethashtags()來提取文本,但只有在字符串中有一個#。 #是觸發器。
我需要的是一個類似的函數,但使用@作爲觸發器而不是散列。
什麼函數可以實現這個結果?我不明白正則表達式的絲毫沒有,所以我很抱歉,如果這個問題出現模糊,因爲我已盡最大努力解釋我的問題。
感謝先進!
輸入和預期輸出會更好。 –
輸入是一種可以輸入任何內容的形式。例如,輸入可能是「大家好」,所以函數會忽略這個,但輸入也可以是「@Callum Hello!#hashtag」,所以函數必須提取兩段文本(Callum和Hashtag),以便它們可以存儲到數據庫 –
你的意思是這個http://regex101.com/r/gD2oI8/1 –