替换以 # 开头然后是整个单词的占位符

2024-01-19

我需要替换文本中以井号 (#) 开头的单词。 好吧,我知道如何替换整个单词。

preg_replace("/\b".$variable."\b/", $value, $text);

因为 \b 修饰符只接受单词字符,所以包含哈希标记的单词不会被替换。


我有这个 html,其中包含 #companyName 类型的变量,我将其替换为值。


\b字母数字字符之间的匹配(简写\w) 和非字母数字字符 (\W),将下划线视为字母数字。正如您所看到的,这意味着它不会在#(除非前面有一个 alnum 字符)。

我建议您仅将查询词括起来\b如果它以 alnum 字符开头和结尾。

所以,也许是这样的(虽然我不懂 PHP,所以这在语法上可能是完全错误的):

if (preg_match('/^\w/', $variable))
    $variable = '\b'.$variable;
if (preg_match('/\w$/', $variable))
    $variable = $variable.'\b';
preg_replace('/'.$variable.'/', $value, $text);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

替换以 # 开头然后是整个单词的占位符 的相关文章

  • 删除重复字符

    我如何删除重复字符 例如删除字母k in cakkkke让它成为cake 执行此操作的一种简单方法是循环遍历字符串的每个字符 如果该字符不是前一个字符的重复 则将字符串的每个字符附加到新字符串 下面是一些可以执行此操作的代码 newStri
  • mysql - 如果日期不与现有日期重叠,则将日期范围插入日期列

    我有以下表结构 表名 available id autoincremetn acc id start date end date 1 175 2015 05 26 2015 05 31 2 175 2015 07 01 2015 07 07
  • 如何仅更改音频文件的 AWS S3 内容类型

    我在 AWS S3 存储桶上有超过 50000 个文件 音频 图像 pdf 现在我面临着 Firefox 的问题 由于其内容类型 音频文件无法在 Firefox 上播放 之前一直运转良好 当我更改内容类型时 音频文件效果很好二进制 八位字节
  • MySQL 无法使用 PHP 连接到本地主机上的服务器

    我正在使用 XAMPP 1 7 2 可以通过 cmd 和 SQLYog 连接到 MySQL 但不能以编程方式连接 这段 PHP 代码 conn mysql connect localhost root if conn die Could n
  • PHP:使用 imagemagick 将图像转换为 TIFF

    我正在尝试使用 imagemagick 将图像转换为 tiff 但在尝试写入文件时遇到问题 我收到一条错误消息 无法打开图片 错误 blob c OpenBlob 2584 这是我正在使用的代码 im2 new Imagick image
  • 在通过 AJAX 响应发送的页面上执行 javascript 函数

    我想执行一个从服务器通过 AJAX 请求发送的函数 函数体不在调用页面中 例如 完整代码如下 1 调用PHP脚本
  • PHP 中的 MD5 替代方案? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 SFTP 上传文件

    我已成功通过 ftp 上传文件 但现在需要通过 SFTP 上传 我可以成功连接到远程服务器 创建文件并写入文件 但无法将现有文件从本地服务器上传到远程服务器 ftp put 没有通过 sftp 连接触发吗 我的代码用来编写一个文件 Send
  • JSON数据通过JS/AJAX转化为PHP

    Goal 我正在使用 coinmarketcap com API link https api coinmarketcap com v1 ticker convert EUR 预先我将他们的数据转换成 PHP 样本 现在我想使用AJAX J
  • PHP 和 ESB(使用 Mule)(ESB:企业服务总线)

    您在 PHP 项目中何时 何地以及为何使用 ESB 您认为在何处 何时以及为何在 PHP 项目中使用 ESB 有意义 ESB 以及像 Mule 这样的 ESB 促进者 是否提供了 PHP 和本地 LAMP 技术所缺乏的任何功能 Edit 我
  • 如何在 PHP 中识别请求的页面

    有没有简单的方法来识别最初处理请求的文件 忽略获取参数并处理 至少是基本的 映射 例如 to index php 理想情况下 我正在寻找类似的东西 SERVER REQUEST URI 但无论 get 参数如何 它都会返回相同的值 并且该值
  • 在 Laravel 5 中合并 'with' 和 'whereHas'

    我在 Laravel 5 中使用 Eloquent 编写了这段代码 它工作得很好 filterTask function query use id query gt where taskid id User whereHas submiss
  • 错误:使用本地文件时,summernote 不是一个函数

    我遇到了一个非常奇怪的问题 当我使用本地的 Summernote 文件加载文本编辑器时 发生了 summernote 不是函数 的情况 但是 如果我使用 cdn 文件加载编辑器 一切都会顺利 这是我的 HTML 标头代码
  • 将匹配的值传递给函数,并替换为返回值

    我如何让 Bash 匹配正则表达式 而不是用常量字符串替换值 而是将匹配的值传递给函数 然后从函数的返回值中获取要替换的值 像下面的伪代码一样 它替换了每一个匹配项 a d 具有相同的字符 但大写 function uppercase ec
  • 在 SQL 中查询行序列

    假设我正在存储events有关联users如下表 其中dt代表事件的时间戳 dt user event 1 1 A 2 1 D 3 1 B 4 1 C 5 1 B 6 2 B 7 2 B 8 2 A 9 2 A 10 2 C 这样我们就可以
  • PHP中如何找出特定进程仍在运行

    我正在编写一个脚本 该脚本构建其他脚本的队列 并应该管理它们的启动 管理器脚本应该知道哪个子进程已经完成 因此它可以启动在队列中等待的其他脚本 我添加了一个 echo 获取每个子进程的进程 ID 所以我有我的子进程进程 ID 现在正在使用系
  • NicEdit 数据不在 POST 中

    我确信我在这里错过了一些非常简单的东西 我已经搜索过 但似乎找不到答案 用这个简单的形式 我如何将 NicEdit 框中的内容发送到我的 HTTP POST 我得到的只是原始文本区域值而不是编辑后的版本 h2 Test Page h2
  • 如何使用存储过程 SQL SERVER 2008 R2(mssql) 插入 PHP 数组值

    我有这个数组 REV Array 0 gt 240 1 gt 241 2 gt 242 3 gt 243 4 gt 249 我现在使用下面的代码进行插入 将每个数组的元素存储在带有 id userID Type 和 Date 的行中 if
  • 重定向后丢失会话变量

    用户填写用户名和密码 如果正确 页面会加载一些信息 例如user id到会话变量 该脚本制作了一个header Location 重定向 不知何故 下一页无法识别会话 怎么会 重定向到同一个域 并且所有页面都有session start 我
  • 用于分页的php示例脚本[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 任何人都可以建议一个好的分页 php 脚本 其中人们想要分页显示数据库中的大量项目 以下链接可以帮助您

随机推荐