正则表达式搜索并替换为可选的复数

2023-12-09

我是正则表达式的新手,所以希望一些专家能够对我的问题打哈欠并给出一个简单的答案。我试图查找并替换以某个字母开头的单词,如果它们是复数,则保留它们的复数。

因此,例如,我想将“boy”一词替换为“band”,将“boys”替换为“bands”

text.replace( /\b(b)[\w]+(s?)\b/gi, "<span style=\"font-weight:bold\">$1and$2<\/span>" );

然而,$2 并没有提供可选的“s”。

提前致谢!


只需改变[\w]+ to [\w]+?.

这改变了

来自“贪婪”(匹配尽可能多的字符,只有在被迫时才放弃字符)
意思是s?不会匹配,因为[\w]+已经为我们做到了。 (错误行为)

到“懒”(匹配尽可能少的字符,仅在绝对必要时添加到匹配项)
这使s?一个匹配的机会。 (正确的行为)

顺便说一句:你可以改变[\w]+? to \w+?它的工作原理完全相同。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式搜索并替换为可选的复数 的相关文章

  • 替换 Greasemonkey 中的部分 URL

    我正在尝试使用 Greasemonkey 脚本替换 url 的一部分 但很难实现我想要做的事情 原始网址如下 http x1 example to images thumb 50 157 1571552600 jpg http x2 exa
  • 查找和替换正则表达式问题

    感谢这里对我其他问题的所有大力帮助 我开始掌握正则表达式 但我仍然对这个一无所知 我的代码是 StreamReader reader new StreamReader fDialog FileName ToString string con
  • PostgreSQL & regexp_split_to_array + 取消嵌套

    我有这样的绳子 测试1 纽约 X 测试 2 芝加哥 Y 测试 3 宾夕法尼亚州哈里斯堡 Z 我需要的结果是 Column1 Column 2 Column3 Test 1 new york X Test 2 chicago Y Test 3
  • 如何为所有语言创建字母数字正则表达式?

    我今天遇到了这个问题 此正则表达式仅匹配英语 a zA Z0 9 如果我需要支持这个世界上的任何语言 我应该编写什么正则表达式 如果您使用字符类简写和 Unicode 识别正则表达式引擎 您就可以做到这一点 这 wclass 匹配 单词字符
  • 正则表达式中的零宽度元素是什么?

    最近 我在正则表达式中看到 零宽度元素 这些是什么 能不能把它们当作幽灵数据 这样对于替换 就不会被替换 对于 匹配 他们不会进入matches 1 matches 2 etc 是否有针对其各种用途的良好教程 他们已经在这里呆了很长时间了吗
  • 正则表达式仅允许特定数字

    我正在寻找一个只允许输入特定数字的正则表达式 例如2 4 5 6 10 18 我尝试过类似的东西 2 4 5 6 10 18 我输入的任何内容都无法通过正则表达式 然后计算机用手指着我并大笑 我哪里出错了 单引号是不必要的 您正在寻找的正则
  • 正则表达式 匹配捕获组内的文本

    示例文本 ruby object DynamicAttribute attributes resource id 1 resource type Applicant string value Michael int value id 359
  • Perl 拆分和正则表达式

    我有以下字符串 100 California Grown Olives Water Salt And Ferrous Gluconate An Iron Derivative asasd sadasda 我想把它分开 but only if
  • 使用Java获取CSS文件中图像的URL?

    我正在尝试使用 Java 获取远程 CSS 文件中图像 所有 MIME 类型 的 URL 我正在使用 jsoup 来获取 css 的 URL 经过无数个小时的观看CSS解析器 http cssparser sourceforge net 由
  • 用于读取类似 CSV 行的 Python 正则表达式

    我想解析传入的类似 CSV 的数据行 值用逗号分隔 逗号周围可能有前导和尾随空格 并且可以用 或 引用 例如 这是有效的行 data1 data2 data3 data4 data5 但这是格式错误的 data1 data2 da ta3
  • Python正则表达式替换引号中的文本(引号本身除外)

    例如 我有一个测试字符串 content I opened my mouth Good morning I said cheerfully 我想使用正则表达式删除双语音标记之间的文本 但不删除语音标记本身 所以它会返回 I opened m
  • 将可点击的锚标记转换为 html 文档中的纯文本

    我正在尝试匹配 a 我的内容中的标签 并将其替换为链接文本 后跟打印版本的方括号中的 url 如果只有 href 则以下示例有效 如果 a 包含另一个属性 它匹配太多并且不会返回所需的结果 我怎样才能匹配 URL 和链接文本 就是这样 这是
  • javascript从字符串创建不区分大小写的正则表达式

    我试图通过以不区分大小写的方式将输入与正则表达式匹配来进行验证 正则表达式作为对象上的字符串从服务中下来 我可能会得到类似的东西 regex ane 我可以执行以下操作 var rx new RegExp object regex The
  • 在 Google 表格中批量查找并替换正则表达式

    是否有函数 脚本或插件可以将大量正则表达式替换应用于 Google 表格中的一系列数据 我有一张包含地址列表的工作表 另一张工作表在两列中包含几十对正则表达式 例如 St 和 Street 我想替换地址中第一列短语的所有实例列出另一个中相应
  • 如何使用正则表达式限制小数点之前/之后/小数点以及整体的位数?

    我正在尝试检查数值是否具有特定数量的数字 总共不应超过 19 位数字 小数点前不能超过17位 整数部分 小数点后不得超过 4 位 小数部分 可以有小数点也可以没有 前面可以有 或 或没有 有效示例 1 1 0 0 1234567890123
  • xpath+ 正则表达式:匹配文本

    我正在尝试编写一个 xpath 以便仅返回包含文本和数字的节点 我想使用正则表达式并希望这能起作用 td matches text d 谁能帮我理解我在这里做错了什么 tr td 1 td td 10 td td a td tr 你缺少量化
  • R正则表达式获取第二个下划线之前的所有文本

    s lt 1 343 43Hello 2 323 14 fdh 99H 在 R 中 我想使用正则表达式来获取第二个下划线之前的子字符串 如何使用一个正则表达式来完成此操作 另一种方法是用 分割 然后粘贴前两个 一些东西 paste sapp
  • 使用 Beautifulsoup 和正则表达式提取 10-K Edgar 文件中的文本

    我想从大约 10000 个文件中自动提取 1A 风险因素 部分并将其写入 txt 文件 可以找到带有文件的示例 URLhere https www sec gov Archives edgar data 1800 0001047469190
  • Notepad++:: 通过正则表达式完全删除包含问号的行

    嗯 我想这就是我的标题 这对于我将要实现的目标来说是不言自明的 这是我当前的文本文件的示例 Diva was the winning song of the Eurovision Song Contest 1998 Who will win
  • Python - 用逗号分割,跳过括号内的内容

    我需要用逗号分隔字符串 但我对这种情况有一个问题 TEXT EXAMPLE THIS IS A EXAMPLE BUT NOT WORKS FOR ME SECOND THIRD 我想拆分并得到 var 0 TEXT EXAMPLE THI

随机推荐

  • Chrome 渲染问题。体内带有 UL 的固定位置锚

    使用以下代码时 Google Chrome 和 Opera 存在渲染问题 为什么 div a href s1 Link 1 a br a href s2 Link 2 a div div div
  • 接触外国安全负责人

    正在寻找用户 email protected 与 objectSidS 1 5 21 1234567890 123465789 123456789 123456 我只找到一个国外安全负责人CN S 1 5 21 1234567890 123
  • 使用数据列表进行多项选择

    我正在使用该标签为我的搜索框创建建议列表 但我无法从数据列表中选择多个值 目前 我的 HTML 是
  • 将键值对传递给 JavaScript 文件

    您可以将键值对传递给 JavaScript 文件吗 该技术由脚本性的 see line 54 您可以通过检查源来实现这一点script在你的页面上的元素中 我给你留下了一个独立于框架的功能 function getScriptVariabl
  • 推送通知在 iOS 10 中不显示

    如何在 iOS 10 中获取通知 在以前的版本中 我可以在以下位置收到通知func application application UIApplication didReceiveRemoteNotification userInfo NS
  • C++ 重载决策、转换运算符和 const

    在这种情况下 void f int void f const int int i f i 情况非常清楚 f int 被调用 这似乎是正确的 但是 如果我有这个 这是错误地完成的 class aa public operator bool c
  • delegate 类似于 mvc 控制器吗?

    我看到了这篇文章 http www cimgf com 2008 10 01 cocoa touch tutorial iphone application example 委托 控制器 委托和控制器这两个词可以同义使用 我不确定他在说什么
  • 如何从 Ruby 运行 Excel 宏?

    Problem 我有这本十多年前的 Excel 工作簿 其中有无数行 VBA 代码 其中一些我必须更新 所以我有了用 Ruby 编写单元测试的疯狂想法 Question 如何从 Ruby 调用 Excel 宏 到目前为止我所拥有的 I ha
  • 这个 State monad 代码是如何工作的?

    这段代码来自于此article 我一直能够遵循它直到这一部分 module Test where type State Int data ST a S State gt a State apply ST a gt State gt a St
  • 为什么我的 div 边距重叠以及如何修复它?

    我不明白为什么这些 div 的边距重叠 alignright float right header social margin top 50px header social a display inline block header soc
  • 如何异步触发JProgressBar?

    我有一个JButton swing 在里面JPanel 如果按下它 我将在其列表中的 for 循环上执行任务EDT thread 这样做时我需要更新JProgressBar 问题是 当我按下 JButton 时 任务是在事件调度线程 EDT
  • 如果我第二天打开应用程序,Firestore 是否会再次收取文档读取费用?

    我没有找到任何解决方案来避免使用 get 时从服务器读取数据 但是 我可能找到了解决方案 但我不清楚它是否有效 我发现在使用实时功能时 客户端会随着数据的变化而不断更新 所以根据我的理解 如果服务器上没有任何更改 则不会收取任何读取费用 对
  • 从受密码保护的 Access 数据库进行 Excel VBA 查询

    我目前正在尝试从 Microsoft Access 数据库 mdb 查询其中一个表 但是 当我尝试执行SELECT FROM myTable 它给出 用户定义类型未定义 我可以知道为什么吗 这是我的示例代码 Private Sub Comm
  • ValueError:lstm 层的输入 0 与该层不兼容:预期 ndim=3,发现 ndim=2。收到完整形状:[无,18]

    我是 Keras 新手 我正在尝试构建一个供个人使用 未来学习的模型 我刚刚开始使用 python 并想出了这段代码 在视频和教程的帮助下 我有 16324 个实例的数据 每个实例由 18 个特征和 1 个因变量组成 import pand
  • 如何在 .npmrc 文件中使用 GitHub 机密?

    我在 GitHub 上有一个项目 它有几个依赖项 所有这些依赖项都发布在 GitHub 包注册表上 我使用 GitHub 操作来发布我的包 我可以在我的应用程序中使用 GitHub 机密workflow yml文件但在我的中不是这样 npm
  • 找不到适用于 jdbc:h2:tcp 的驱动程序

    当我尝试使用 java Web 应用程序连接到 h2 数据库时 抛出 java sql SQLException No合适的驱动程序找到 jdbc h2 tcp localhost ZadatakDB 我可以毫无问题地使用 H2 控制台 并
  • 如何粘贴而不覆盖寄存器

    有谁知道一种方法可以粘贴到视觉上选择的区域而不将选择放置在默认寄存器中 I know I can solve the problem by always pasting from an explicit register But it s
  • IntelliJ Idea 使用错误的 git

    我无法让 git 与 IntelliJ IDEA 2022 3 1 终极版 一起使用MacOS Monterey 12 5 芯片 Apple M1 Pro git 可执行文件的路径 usr local bin git IntelliJ Id
  • 使用 Freemarker 解析 Spring MVC 中的视图 - 包括 jsp 页面

    使用 FreemarkerServlet 时 可以将 JSP 页面与 Freemarker 内容一起包含在内 但是 我在 Spring MVC 应用程序中使用 Freemarker 作为视图解析器 因此不使用 FreemarkerServl
  • 正则表达式搜索并替换为可选的复数

    我是正则表达式的新手 所以希望一些专家能够对我的问题打哈欠并给出一个简单的答案 我试图查找并替换以某个字母开头的单词 如果它们是复数 则保留它们的复数 因此 例如 我想将 boy 一词替换为 band 将 boys 替换为 bands te