gpt4 book ai didi

php 从文本 block 中提取所有主题标签和推特名称

转载 作者:可可西里 更新时间:2023-11-01 00:08:14 25 4
gpt4 key购买 nike

我在 php 中有一段文本,我希望能够从中提取所有主题标签和推特名称,并将它们打印为一个新字符串。

例如:

$longstring = "blah blah blah #hashtag blah blah @twittername blah email@email.com blah blah #hashtag2 blah blah";

我想创建一个新字符串:

$extracted = "#hashtag @twittername #hashtag2";

知道如何轻松地做到这一点吗?

我不确定答案是否是正则表达式?这是否可以同时进行并找到两种类型的所有多次出现?

最佳答案

希望这对您有所帮助。

Regex demo

正则表达式: #[^\s]+|(?<=\s|^)@[^\s@#]+

1. #[^\s]+ this will match # and then match all till space(not including space)

2. | or

3. (?<=\s|^)@[^\s@#]+ match @ and then all except space, @ and # with positive look behind for space or start of string

这里我们使用 preg_match_all用于收集火柴和 implode将其作为字符串加入。

Try this code snippet here

<?php
ini_set('display_errors', 1);
$string = "blah blah blah #hashtag blah blah @twittername blah email@email.com blah blah #hashtag2 blah blah";
preg_match_all("/#[^\s]+|(?<=\s|^)@[^\s@#]+/", $string, $matches);
print_r(implode(" ",$matches[0]));

输出: #hashtag @twittername #hashtag2

关于php 从文本 block 中提取所有主题标签和推特名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43972708/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com