如何从长文本中取一个特定的单词来制作变量?

时间:2016-05-01 18:25:58

标签: php regex variables preg-replace

我想从长文本中取一个特定的单词来制作变量。我正在使用这些代码;

function hashtag($str){
    $regex = "/(#)+[a-zA-Z0-9]+/";
	$str = preg_replace($regex, '<a href="e.php?tag=\\0")">\\0</a>', $str);
    return($str);
}

它是一个标签;

文字:Robert De Niro赢得了#oscar。

在代码之后:Robert De Niro赢得了#oscar

(___ e.php?标签=#奥斯卡)

但我想用“奥斯卡”制作一个变量,然后像这样建立链接;

罗伯特·德尼罗赢得了#oscar

(___ e.php?标签=奥斯卡)

我的意思是如果我可以创建一个变量($ variable),我可以在任何我想要的地方使用它。

如果你能帮助我,我会非常感激。

1 个答案:

答案 0 :(得分:0)

简单:

<?php
function hashtag($str){
    $regex = "/#([a-zA-Z0-9]+)/";
    $str = preg_replace($regex, '<a href="e.php?tag=\\1">\\0</a>', $str);
    return($str);
}

唯一要做的是在哈希标记之后捕获该部分,然后将其用作tag变量。

参见 demo on ideone.com