如何使用依赖于变量的模式执行 Javascript 匹配?

2024-01-07

目前的实施Remy Sharp 的 jQuery 标签建议插件 http://remysharp.com/2007/12/28/jquery-tag-suggestion/只检查标签开头的匹配项。例如,输入“Photoshop”将不会返回名为“Adobe Photoshop”的标签。

默认情况下,搜索区分大小写。我稍微修改了它以修剪多余的空格并忽略大小写:

for (i = 0; i < tagsToSearch.length; i++) {
    if (tagsToSearch[i].toLowerCase().indexOf(jQuery.trim(currentTag.tag.toLowerCase())) === 0) {
        matches.push(tagsToSearch[i]);
    }
}

我试图做的是再次修改它,以便当用户输入“Photoshop”时能够返回“Adobe Photoshop”。我尝试过使用match,但是当模式中存在变量时我似乎无法让它工作:

for (i = 0; i < tagsToSearch.length; i++) {
    var ctag = jQuery.trim(currentTag.tag);
    if (tagsToSearch[i].match("/" + ctag + "/i")) { // this never matches, presumably because of the variable 'ctag'
        matches.push(tagsToSearch[i]);
    }
}

以这种方式执行正则表达式搜索的正确语法是什么?


如果你想在 JavaScript 中动态执行正则表达式,你必须使用正则表达式对象 https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/RegExp。我相信你的代码看起来像这样(尚未测试,不确定,但总体思路是正确的):

for (i = 0; i < tagsToSearch.length; i++) {
    var ctag = jQuery.trim(currentTag.tag);
    var regex = new RegExp(ctag, "i")
    if (tagsToSearch[i].match(regex)) {
        matches.push(tagsToSearch[i]);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用依赖于变量的模式执行 Javascript 匹配? 的相关文章

  • 水平滚动的表格上的“粘性”标题......完全不可能?

    经过过去几个小时的研究后 我开始认为这是不可能的 即使在最新的浏览器上也是如此 HTML table具有水平滚动的元素 带有 粘性 thead在顶部 作为垂直滚动的周围网页的一部分 这是我的尝试 a height 100px backgro
  • 在 R 传单中添加不透明度滑块

    如何在 R leaflet 应用程序中添加滑块来控制特定图层的不透明度 对于这个应用程序 我不想使用闪亮 这里建议 在 R 传单应用程序中添加滑块 https stackoverflow com questions 37682619 add
  • 如何立即启动setInterval循环? [复制]

    这个问题在这里已经有答案了 在一个简单的setInterval setInterval function Do something every 9 seconds 9000 第一个动作将在 9 秒后发生 t 9s 如何强制循环立即执行第一个
  • 如何使 d3 饼图响应式?

    我有一个 PIE 图表 它工作正常 但我无法使其具有响应能力和可调整大小 我需要它与移动浏览器和 iPad 等兼容 div div
  • API 使用令牌向 odoo 进行身份验证

    我想使用令牌从 Express 应用程序向 Odoo 进行身份验证 我在用odoo xmlrpc https www npmjs com package odoo xmlrpc连接 Odoo 的节点模块 我的快递应用程序 Odoo 要求 A
  • karma/jasmine 控制台更详细的测试结果

    我使用 Karma 和 Jasmine 进行 javascript 单元测试 假设我有一个失败的测试 如下所示 expect objectA toEqual expectedObjectA 当失败时 我看到控制台上转储了两个对象 并显示一条
  • 如何在 React Native 上显示 SVG 文件?

    我想显示 svg 文件 我有一堆 svg 图像 但我找不到显示的方式 我尝试使用Image and Use的组成部分反应本机 svg https github com magicismight react native svg但他们不这样做
  • 将 Firebase FCM 添加到 ReactJS 应用程序

    我正在尝试向我的 ReactJS 应用程序中的用户发送推送通知 我已添加 firebase 请求用户通知权限 这正在发挥作用 但现在我想注册设备令牌 但这给了我错误 消息传递 我们无法注册默认的 Service Worker 无法注册 Se
  • 创建正则表达式匹配数组

    在Java中 我试图将所有正则表达式匹配返回到一个数组 但似乎您只能检查模式是否匹配某些内容 布尔值 如何使用正则表达式匹配来形成与给定字符串中的正则表达式匹配的所有字符串的数组 4城堡的回答 https stackoverflow com
  • 正则表达式的 o 修饰符是什么意思?

    Ruby 正则表达式有一些选项 例如i x m o i例如 意味着忽略大小写 什么是o选项是什么意思 在ri Regexp 它说o意味着执行 仅插值一次 但是当我这样做时 a one b a a two b不改变 它保持 one 我缺少什么
  • 呃!尝试将包发布到 npm 时出现 403

    我正在尝试将包发布到 npm 您可以在此处查看存储库 https github com biowaffeln mdx state https github com biowaffeln mdx state 我登录到 npmnpm login
  • 如何为我的整个 Node.js 应用程序使用相同的 MySQL 连接?

    我有一个app js 我从那里运行我的整个应用程序 在 app js 内部 我require许多文件中都有代码 对于每个文件 我都这样做 var mysql require mysql var mclient mysql createCon
  • 扩展 RegExp 以获取文件扩展名

    我知道 已经有很多基于 RegExp 的解决方案 但是我找不到适合我需求的解决方案 我有以下函数来获取 URL 的各个部分 但我还需要文件扩展名 var getPathParts function url var m url match w
  • 如何在画布上所有其他内容后面绘制图像? [复制]

    这个问题在这里已经有答案了 我有一块画布 我想用drawImage在画布上当前内容后面绘制图像 由于画布上已经有内容 我正在使用字面上的画布来创建包含图像的画布 因此我无法真正先绘制图像 所以我无法使用drawImage在我呈现其余内容之前
  • 如何重复 ajax 请求,直到满足 RxJS Observable 的条件?

    我正在尝试重复请求 直到响应包含使用 RxJS 的数据 此时我想调用成功 或失败 处理程序 但我在使用 RxJS 时遇到了麻烦 这是我目前的方法 redux observable action observable mergeMap gt
  • ThreeJS 中阴影的奇怪行为

    所以我有一个 ThreeJS 场景 并且添加了一些球体 多材质 我还添加了定向光 this light new THREE DirectionalLight 0xFFFFFF 1 this light position set 2 10 2
  • Jwt 签名和前端登录身份验证

    我有这个特殊的 jwt sign 函数 Backend const token jwt sign id user id process env TOKEN SECRET expiresIn 1m res header auth token
  • MongoDB:javascript执行失败:无法在 src/mongo/shell/collection.js 保存 DBQuery 对象

    在 MongoDb 中 当我尝试修改集合中的现有文档时 它会生成以下异常 javascript execution failed can t save a DBQuery object at src mongo shell collecti
  • 如何映射轮播的子项数组?

    我正在尝试将 Carousel 组件包装在映射对象数组周围作为组件的子级 目前我只能让映射创建映射对象的 1 个子对象 轮播需要像这样
  • 将多维数组转换为单数组(Javascript)

    我有一个对象数组 来自 XLSX js 解析器 因此其长度和内容各不相同 表示已给予项目的资助 简化后 它看起来像这样 var grants id p 1 location loc 1 type A funds 5000 id p 2 lo

随机推荐

  • 将表从 .sql 复制到 .db 文件。艰难地学习 SQL

    我很确定对此有一个简单的答案 但我在任何地方都找不到它 而且似乎自己也无法弄清楚 任何帮助将不胜感激 我正在尝试从 a 复制一个表 sql file ex1 sql 其中有一个基本表 我可以毫无问题地创建这个 但是然后我运行以下命令将此表复
  • 此外,使用现有身份验证对作为 Azure WebApp 托管的 ASP.NET Core MVC 网站进行密码保护

    我有一个带有 ASP NET Core Identity 的现有 ASP NET Core MVC 应用程序 其中我使用了以下组合signInManager PasswordSignInAsync and Authorize 强制用户登录网
  • 如何通过 1 的位置列表解码 0 和 1 的列表?

    我想创建一个List Int 仅包含 0 和 1 数组中定义的 0 和 1 的位置 val bitMask List 2 5 6 11 621 655 bitMask 是结果列表中位置一的列表 结果列表中的项目为零 结果我想得到 resul
  • Python PyEphem 计算方位角和高度

    我是 PyEphem 的新手 我正在尝试弄清楚它可以做什么以及它是如何工作的 由于我不想将其用作黑匣子并盲目相信我得到的任何数字 因此我想重新创建一个解释的示例here http www stargazing net kepler alta
  • 停止读取 Python 中的进程输出而不挂起?

    我有一个适用于 Linux 的 Python 程序 几乎看起来像这样 import os import time process os popen top readlines time sleep 1 os popen killall to
  • 使用 PagedList 和成员资格

    我一直在玩 Troy Goode 的 PagedListhttp pagedlist codeplex com http pagedlist codeplex com 我想知道是否有人已经让它与内置的 asp net 会员部分一起工作 我有
  • 将焦点设置在 xaml wpf 中的文本框上

    尽管这个论坛和其他论坛上有一些帖子 但我找不到一些东西来告诉我如何将焦点放在TextBox 我有一个带有许多标签和文本框的用户控件 加载表单时 我希望特定的文本框具有焦点 我已经设置了 tabIndex 但这似乎不起作用 有什么建议么 您可
  • Symfony 2 中的中间路由可选参数

    需要解决的问题 在 Symfony 2 中是否可以用 定义路由中间的 可选参数 我将使用其他问题数据 https stackoverflow com questions 17059843 routing in symfony2 option
  • ASP.NET MVC:动作过滤器设置控制器变量?

    我有一个场景 对于每个页面请求 我都必须检查会话是否存在特定 ID 如果发现这一点 我必须从数据库中获取相关对象并将其提供给控制器 如果找不到会话 ID 我需要重定向用户 会话已过期 目前 我有一个自定义代码块 几行 它在控制器内的每个操作
  • 防止在插件中创建

    我在服务活动的预创建上注册了一个插件 在插件中 我检查一些条件 如果满足这些条件 我想停止创建服务活动 我想创建另外两个服务活动来代替该服务活动 但我不希望用户收到这一切的通知 有没有办法停止在 CRM 2011 上的插件中创建 SA 记录
  • 如何将 UUID 转换为 base64?

    我想打字UUID并将其输出到Base64编码格式 但是考虑到输入方法Base64并输出UUID如何实现这一点似乎并不明显 update虽然对于我的用例来说不是明确的要求 但最好知道所使用的方法是否使用 UUID 的原始 UUID UUID
  • 使用相同的 docker 映像部署多个 Cloud Run 服务

    有超过 25 个 Cloudrun 服务使用相同的 docker 镜像 来自 GCR 但配置了不同的变量 有什么简单可靠的方法可以使用来自任何类型传入事件的最新容器映像来部署所有服务 目前使用下面的CLI命令来手动执行一一执行 有没有一种自
  • java子类的私有final字段可以在超级构造函数完成之前初始化吗?

    我有一对像这样的课程 public abstract class Class1 public Class1 function2 protected abstract void function2 public class Class2 im
  • mkstemp 的 java 等效项

    Java中有什么方法可以安全地写入临时文件吗 据我所知 创建临时文件 createTempFile 的唯一方法实际上并不同时打开它 因此文件打开和文件写入之间存在竞争条件 我错过了什么吗 我在 UnixFileSystem java 中找不
  • Vaadin 中当前 UI 的访问方法

    我目前正在 Vaadin 开发 Java Web 应用程序 我想从另一个类访问位于我的 LoginUI 中的 getter 方法 UI getCurrent 成功返回当前线程 LoginUI 我需要调用哪些方法来实现此目的 先感谢您 UI
  • 错误:写入失败、打开流失败、pecl 在 mac osx el Capitan 上安装 oauth

    我正在尝试使用 pecl install 在本地安装 OAuth 版本 1 2 3 在 Mac OSX El Capitan 上运行 PHP 5 6 10 在命令提示符中运行以下命令 sudo pecl install oauth 1 2
  • 如何检测 Racket Web 应用程序上的按键?

    我已经浏览了网络服务器的文档 但找不到任何内容 这是我的基本 Web 应用程序的代码 lang racket require web server servlet web server servlet env define test def
  • Mysql - 可视化 Web 开发人员 - 实体框架

    我遇到以下问题 我有 Visual Web Developer 2010 Express 我正在尝试让它与实体框架和 MySQL 数据库一起使用 我安装了 NET Connector for MySql 但它似乎没有与 Web Develo
  • 页面内容显示在侧边栏下方

    我正在创建一个带有侧边栏的 html 布局 但我的标题和内容出现了下我的侧边栏而不是旁边的 container position relative padding 10px top 0px right 0 left 0 height 120
  • 如何使用依赖于变量的模式执行 Javascript 匹配?

    目前的实施Remy Sharp 的 jQuery 标签建议插件 http remysharp com 2007 12 28 jquery tag suggestion 只检查标签开头的匹配项 例如 输入 Photoshop 将不会返回名为