正则表达式将给定单词替换为两侧的空格或根本不替换

2023-12-03

我正在使用 PHP 中的一些代码,从搜索引擎获取引用数据,为我提供用户输入的查询。

然后,我想从该字符串中删除某些停用词(如果存在)。但是,该单词两端可能有也可能没有空格。

例如,我一直使用 str_replace 删除一个单词,如下所示:

$keywords = str_replace("for", "", $keywords);
$keywords = str_replace("sale", "", $keywords);

但如果 $keywords 值是“婴儿配方奶粉”,它会将其更改为“婴儿 mula” - 删除“for”部分。

无需创建进一步的 str_replace 来解释“for”和“for” - 是否有一个 preg_replace 类型命令我可以使用,如果发现给定的单词两端都有空格,它将删除给定的单词?

我的想法是将所有停用词放入一个数组中,并以这种方式逐步执行它们,我怀疑 preg_replace 会比逐步执行多个 str_replace 行更快。

UPDATE:感谢你们使用以下组合解决了问题:

$keywords = "...";
$stopwords = array("for","each");
foreach($stopwords as $stopWord)
{
    $keywords = preg_replace("/(\b)$stopWord(\b)/", "", $keywords);   
}

$keywords = "...";
$stopWords = array("for","sale");
foreach($stopWords as $stopWord){
    $keywords = preg_replace("/(\b)$stopWord(\b)/", "", $keywords);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式将给定单词替换为两侧的空格或根本不替换 的相关文章

  • 如何通过保持目录结构完整来同步路径中匹配模式的文件?

    我想将所有文件从服务器 A 复制到服务器 B 这些文件在不同级别的文件系统层次结构中具有相同的父目录名称 例如 var lib data sub1 sub2 commonname filetobecopied foo var lib dat
  • Smarty 如果 URL 包含

    使用 Smarty 标签我想确定 URL 是否包含单词 例如 if smarty get page contains product php 我知道 contains 不存在 但是我怎样才能轻松地编写类似的东西来实现上述代码呢 所有 PHP
  • 如何编写 Clojure 宏来从字符串创建正则表达式?

    我正在创建一个方便的宏 部分便利在于可以仅使用字符串来指定正则表达式 而不是使用 re 表示法 我无法弄清楚的一部分是如何让宏获取字符串并将其重写为 Clojure 正则表达式 例如 生成 re 符号 我认为这是一个语法 转义问题 我的第一
  • 选择一组数字以达到最小总数的算法

    给定 一组数字n 1 n 2 n 3 n x 还有一个数字M 我想找到最好的组合 n a n b n c n gt M 该组合应达到达到或超过 M 所需的最小值 没有其他组合可以提供更好的结果 将在 PHP 中执行此操作 因此可以使用 PH
  • 使用 ImageMagick 和 PHP 将 PNG 转换为 JPG 并将透明背景设置为白色

    将图像从 PNG 转换为 JPEG 时 如何使用 ImageMagick 带有 php 扩展 将透明背景设置为白色 在撰写本文时 您尚未指定正在使用哪个扩展 但如果您使用命令行 则命令将是 convert image png backgro
  • php中的条件格式化html表与时间戳比较

    echo table style width 100 tr echo td Order td echo td Destination td echo td Location td echo td Status td echo td Time
  • 如何关闭未关闭的 HTML 标签?

    每当我们从数据库或类似来源获取一些经过编辑的用户输入内容时 我们可能会检索仅包含开始标记但不包含结束标记的部分 这可能会妨碍网站当前的布局 有客户端或服务器端的方法来解决这个问题吗 找到了一个很好的答案 使用 PHP 5 并使用 DOMDo
  • CodeIgniter 控制器 - JSON - AJAX

    我正在尝试通过 AJAX 使用 CodeIgniter 发送表单构建 并尝试使用 JSON 获取响应 但是 我只在打开开发人员选项卡时看到响应 我什至不确定这是否实际上是响应 因为它显示了两个 json 数据 它所显示的只是加载旋转器 然后
  • 使用 PHP PayPal REST API 退款?

    我正在开发一个集成到 PayPal 的 REST API 中的 PHP 应用程序 我正确处理了事务并将事务 ID 保存到 MySQL 数据库中 我现在正在尝试退款 但无法让它停止给出 传入 JSON 请求未映射到 API 请求 错误 有人对
  • WordPress 包含 SVG 文件错误

    我使用 PHP 和 WordPress 在本地主机上 我可以毫无问题地包含 SVG 文件 但在实时服务器上 我尝试包含一个 SVG 文件以便能够使用 CSS 对其进行样式设置 我收到此错误消息 Parse error syntax erro
  • PHP 扩展开发入门 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 请推荐有关 PHP 低 级 modules 编程接口的帮助文章或教程 搜索我的书签 我发现的唯一链接是
  • 检测两个正则表达式是否可能匹配相同的字符串[重复]

    这个问题在这里已经有答案了 给定两个正则表达式 是否可以检测是否存在与它们都匹配的可能字符串 例如 给定正则表达式A and 我可以看到那个字符串 A 匹配他们两个 这是一个简单的案例 我的问题是针对更广泛的情况 给定任何两个有效的正则表达
  • Ebay api GetSellerList,解析响应 XML

    我正在使用 eBay 交易 api 来获取当前列出的卖家股票 我正在使用 GetSellerList 调用 我在解析 xml 时遇到问题 然后将其插入到网站商店中 这是 xml 请求
  • vim 中的正则表达式查找和替换:向数字添加 .0

    我有一个如下所示的文件 1 1 0 1 6 1 0 2 8 1 0 3 10 1 0 4 12 1 0 6 如何为所有数字添加 0 后面的数字除外 我认为用正则表达式来做到这一点应该不会太难 但是我的正则表达式知识太生疏了 使用 VIM s
  • 如何删除文件

    我们有一个脚本 scripts ourscript php和一个文件 media movie1 flv 当我们运行时 我们如何删除这个文件ourscript php Using unlink http php net manual en f
  • WordPress 自定义帖子类型未显示在搜索结果中

    我在 WordPress 中遇到自定义帖子类型 测验 和搜索的问题 自定义帖子类型未显示在我的搜索结果页面中 我的搜索结果中仅显示默认的帖子内容 以下是我使用的代码 函数 php函数create posttype register post
  • phpActiveRecord 日期时间格式不正确

    当尝试使用 phpActiveRecord 在表中创建记录时 出现以下错误 Invalid datetime format 1292 Incorrect datetime value 2013 06 20 11 59 08 PDT for
  • PHP递归遍历对象树[关闭]

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

    如果 APC 存储大量条目 清除它们会导致 httpd 崩溃 如果 apc clear cache user 花费的时间超过 phps max execution time 调用 apc clear cache 的脚本 将在之前被 php
  • ZF3/2 - 如何捕获 EVENT_DISPATCH 侦听器中引发的异常?

    有什么方法可以在 EVENT DISPATCH 监听器中抛出异常吗 class Module public function onBootstrap EventInterface event application event gt get

随机推荐

  • 如何使用 django Rest Framework 在嵌套序列化器对象中创建三个表

    我正在尝试在 Django Rest Framework 中创建三个模型嵌套对象 模型 py class Project models Model project id models AutoField primary key True u
  • 为什么我不能在 Django 模板视图中添加连字符?

    profile first name value 我的变量只是炒作 我希望我能做到名 但许多变量都是连字符 但是 由于这个问题 我无法在模板中显示我的变量 为什么 连字符是 Python 中的运算符 如果将所有连字符替换为下划线 效果会更好
  • 有没有办法在我的 IPython 提示符中获取本地时间戳?

    有没有办法在我的 IPython 提示符中获取本地时间戳 我在 64 位 Windows Vista 上使用 IPython 0 10 和 Python 2 6 我当前的默认提示是 C Python26 Scripts 9 gt 好吧 我试
  • 在 startActivity() 上传递 Bundle?

    将捆绑包传递到从当前活动启动的活动的正确方法是什么 共有财产 您有几个选择 1 使用Bundle来自Intent Intent mIntent new Intent this Example class Bundle extras mInt
  • keytool 和 openssl 证书指纹不匹配

    我试图在 META INF 内对 Android 开发者证书进行指纹识别 以用于研究目的 我发现在某些情况下 keytool 和 openssl 的输出会给我同一证书提供不同的 SHA1 指纹 使用密钥工具 keytool princert
  • OpenMP 开销计算

    给定 n 个线程 有没有一种方法可以计算在 OpenMP 中实现特定指令所需的开销量 例如周期数 例如 给出下面的代码 pragma omp parallel pragma omp for for int i 0 i lt m i a i
  • 安装allure pytest适配器后出错

    我正在尝试在 Windows 8 机器上使用 Pytest 3 6xx 配置 Allure 2 6 0 我能够运行 pytest 并生成 jUnit xml 报告文件 稍后我可以将其传递给 allure allure 服务器 jUnitXm
  • 是否可以检测用户何时切换到不同的浏览器选项卡?

    我试图检测用户何时从当前浏览器选项卡切换到另一个选项卡 监听 window onblur 在 Firefox 中可以很好地检测用户何时将焦点切换到另一个窗口 但当用户切换到另一个选项卡时它似乎不会触发 然而 当从另一个选项卡切换到有问题的选
  • Web 服务请求调用 SOAP 请求缺少空参数

    我对 Web 服务和 C 都很陌生 所以如果我的问题太简单 请原谅我 我四处搜寻 但找不到答案 至少根据我的关键词找到了答案 我尝试通过 C Visual Web Developer 2010 Express 调用 Web 服务 但收到错误
  • Coldfusion 中的哈希用于安全支付网关

    我正在尝试在 Coldfusion 中创建一个哈希密码 以便我们的安全支付网关接受交易 不幸的是 支付网关拒绝接受我生成的哈希值 该表单发送交易的所有元素 并发送基于五个不同字段生成的哈希值 在 PHP 中它是 我认为 Coldfusion
  • Java Web 应用程序指定入口点

    我有一些 Java Web 应用程序 现在它从 index jsp 页面开始 我有自己的课程 代码如下 import java io import javax servlet import javax servlet http public
  • 当我尝试将双精度型转换为浮点数时,为什么会出现错误?

    我在将双精度型转换为浮点数时遇到了一些问题 代码 float volume 0 5 Double i Volume Value volume float i 100F Bass BASS SetVolume volume 正如你所看到的 我
  • Visual Studio 中的 aspx 页面设计视图有用吗?

    我从来没有真正发现 Visual Studio 中的设计视图在开发 aspx 页面时有用 所以我基本上从不使用它 我是否遗漏了某些东西 或者这只是那些不是特别有用的功能之一 你使用设计视图吗 如果是这样 你觉得它有用吗 如果没有 为什么不呢
  • 如何根据XML文件自动生成WPF控件?

    我有一个 Xml 文件 它告诉我必须添加到表单中的控件 但此 Xml 会动态更改 我需要更新表单 目前 我可以读取XML文件 但我不知道是否可以基于该文件自动创建表单 对的 这是可能的 WPF 提供了多种在 Xaml 或代码中创建控件的方法
  • Excel 的独立代码

    Can VBA编写代码以对任何操作执行操作Excel file 当我在中创建项目时视觉工作室 它要求一个Excel要链接到它的文件 我写的所有代码都在ThisWorkbook vb因此仅作用于Excel链接到项目的文件 Ideally I
  • 如何全屏滑动选定的网格图像

    我创建了一个网格视图图像应用程序 我想在图像滑动中显示所选图像 实际上我在我的应用程序中实现了图像滑动but问题是图像滑动从第一张图像开始 而不是从选定的图像开始 example 如果我选择第三张图像 则图像滑动应该从第三张图像开始 而不是
  • 缺少必需参数:aws_access_key_id、aws_secret_access_key

    我目前正在尝试在终端中运行我的测试套件 但出现以下错误 Missing required arguments aws access key id aws secret access key ArgumentError 我在我的项目中使用 C
  • Android HttpClient:NetworkOnMainThreadException

    我有下面的一些代码 protected void testConnection String url DefaultHttpClient httpclient new DefaultHttpClient HttpGet httpget ne
  • 用户帐户“root”的指定密码无效,或无法连接到数据库服务器

    我在 Windows Server 2012R2 上使用 Windows 平台安装程序 5 0 安装 WordPress 时遇到此错误 目前我在该服务器上有一个带有 mySQL 的 php 站点 运行良好 几个月前 作为设置该网站的一部分
  • 正则表达式将给定单词替换为两侧的空格或根本不替换

    我正在使用 PHP 中的一些代码 从搜索引擎获取引用数据 为我提供用户输入的查询 然后 我想从该字符串中删除某些停用词 如果存在 但是 该单词两端可能有也可能没有空格 例如 我一直使用 str replace 删除一个单词 如下所示 key