如何在方括号中查找单词并使用 php 转换为动态 url?

Posted

技术标签:

【中文标题】如何在方括号中查找单词并使用 php 转换为动态 url?【英文标题】:How to find words in Square brackets and convert to dynamic url using php? 【发布时间】:2020-03-09 16:28:12 【问题描述】:

我正在尝试在像 [word] 这样的方括号中查找单词并创建一个动态 url。

我尝试使用str_replace() 函数来查找单词,但它会创建这样的链接

<a href="search.php?q=">word</a>

我无法将搜索到的单词添加到 url 部分:

我怎样才能创建一个像这样的真实网址?

<a href="search.php?q=word">word</a>

更新

这是我的功能:

function findReplace($string)
    $string = str_replace ("[word]", "<a href='search.php?=' title='information'>information</a>", $string); 
    return $string;

这是我从数据库中获取值的方式: findReplace(htmlspecialchars($row['message']))

【问题讨论】:

对不起,我不明白这个问题,它很乱。你能试着改进一下吗? 显示你是如何尝试的str_replace 向我们展示您的尝试 我也很难理解你在问什么。 你想根据匹配创建这样的url吗? &lt;a href="search.php?q=word"&gt;word&lt;/a&gt; 【参考方案1】:

preg_replace 在这种情况下是你的朋友:

$longText='bla bla [word1] bla [word2] bla [word3] bla bla';

print preg_replace('/\[(.*?)\]/', '<a href="search.php?q=$1">$1</a>', $longText);

输出:

bla bla <a href="search.php?q=word1">word1</a> bla <a href="search.php?q=word2">word2</a> bla <a href="search.php?q=word3">word3</a> bla bla

【讨论】:

如果我有这个功能可以吗?对不起:( preg_replace 在这种情况下是您的功能,您只需要使用输入字符串 $row['message'] 或其他任何内容。

以上是关于如何在方括号中查找单词并使用 php 转换为动态 url?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Notepad++ 正则表达式查找/替换中保留括号

在 php 中使用 grep 命令在特定文件中查找字符串

在 PHP 中查找重复的单词而不指定单词本身

如何在Pandas数据帧(Python)中查找语料库中最常用的单词

如何在 PHP 中查找单词组合

动态变量名 php 7.4 和赋值