我想解压缩使用php的hashtag后的内容。如何提取hashtag内容?
例如:
$sentence = 'This #Coffee is the #best!!';
如何获得价值 '咖啡' 和 '最佳'?请注意,我不希望感叹号后“最好”
我想解压缩使用php的hashtag后的内容。如何提取hashtag内容?
例如:
$sentence = 'This #Coffee is the #best!!';
如何获得价值 '咖啡' 和 '最佳'?请注意,我不希望感叹号后“最好”
一个非常安全的包罗万象的使用UTF-8/Unicode:当
preg_match_all('/#([\p{L}\p{Mn}]+)/u',$string,$matches);
var_dump($matches);
尽管如此,如果你不使用/预期异国情调的字符,这可能会工作得很好,是更具可读性:
preg_match_all('/#(\w+)/',$string,$matches);
试试这个:
|\#(\w*)|
像
一句
来看,我想所有#something#此
它将检索“东西”和“本”。林假设你只是想在正则表达式,要使用该功能preg_match_all
你为什么要逃避'#'? – Gumbo 2010-11-04 20:43:43
我知道不是一个正则表达式实体,但只是一个习惯,以逃避我不太确定的事情。这两种方式都很好。 – 2010-11-04 21:04:53
我想更好:
preg_match_all('/#([^#]+)#/msiU',$string,$matches);
处理多句
完美的作品,太感谢你了! – anna 2010-11-04 20:56:00
我修改了正则表达式,以包含也可以包含下划线和数字字符的hashtags。 #NYE2016:preg_match_all('/#([\ p {Pc} \ p {N} \ p {L} \ p {Mn}] +)/ u',$ string,$ matches); – minaz 2016-02-19 05:45:41
@minaz感谢您的RE。 – 2016-07-22 13:09:23