从字符串中提取除方括号中的单词之外的所有单词

2024-03-26

我再次完全陷入创建正则表达式的困境。

我有一个字符串模式,例如:

str = ' wordA [] wordAB [xyz] wordABC [x] '

所以总有一个词后面跟有括号里的东西[ ... ]或空括号[]。单词的长度、前导和尾随空格以及括号内的字符数是随机的。该序列重复的频率也是随机的。

我想只提取不带括号的单词:

output = 

    'wordA'    'wordBC'    'wordABC'

我认为问题在于方括号,因为它们是正则表达式的功能字符。我尝试过类似的东西

output = regexp(str,'^\[.+\]$','split')

和没有成功的变化。

有什么提示吗?


我们可以使用选择所有单词\w+正则表达式。但它会选择所有单词(包括括号中的单词)。括号外的单词前后都有空格,因此我们可以添加正向lookbehind(?<=\s)- 确保单词之前有空格,并且积极向前看(?=\s)- 确保单词后面有空格。此外,第一个单词前面没有空格,因此我们需要包含要包含的条件字符串的开头也给我们积极的回顾(?<=\s|^)。最后我们有了完整的正则表达式:

(?<=\s|^)\w+(?=\s)

如果你能拥有wordA[]字符串(没有空格),那么你需要添加[积极的前瞻。

(?<=\s|^)\w+(?=\s|\[)

如果你能拥有wordA [ xyz ]字符串(括号内的空格),上面的正则表达式不起作用,我们需要不同的策略 - 查找没有的单词[前。但我们不能只说前面没有 [ 的单词,因为它会匹配yz in [xyz],我们需要说我们需要的词不以[和符号以外的].

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

从字符串中提取除方括号中的单词之外的所有单词 的相关文章

  • Javascript 搜索并替换包含方括号的字符序列

    我正在尝试在字符串 Nationality EN ESP 中搜索 EN 我想从字符串中删除它 所以我使用替换方法 代码示例如下 var str Nationality EN ESP var find EN var regex new Reg
  • 通过jquery在日期框中自动添加斜杠/符号[重复]

    这个问题在这里已经有答案了 我发现几个问题但没有答案 所以我问问题 如何添加自动斜杠 符号
  • Java用逗号或点和两个小数值验证价格[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 验证必须用点或逗号表示价格值且最多具有两位小数值的字符串的最佳方法和解决方案是什么 RegExp java text DecimalFor
  • 正则表达式中的 ^.* 和 .*$ 是什么?

    谁能解释一下这些字符的含义 我查过它们 但我似乎不明白 整个正则表达式是 8 a z A Z 所以基本上是正则表达式的开始和结束字符 意思是 任何字符 意思是 任何数量的这个 因此意味着任意长度的任意字符串 表示字符串的开头 表示字符串的结
  • 如何使用正则表达式删除JS中的ul标签和所有包含的内容

    我如何用js删除ul标签和所有内容 例子 div ul li a li li b li ul div 我要这个 div div i use var replace regex 有人可以帮助我吗 诗 只有js 我不能使用Jquery 如果您坚
  • 正则表达式仅匹配字母数字和连字符,删除 javascript 中的其他所有内容

    我想删除除字母数字和连字符之外的所有内容 到目前为止 我已经得到了这个 但它不起作用 String String replace a zA Z0 9 ig 有什么帮助吗 如果要删除除字母数字 连字符和下划线之外的所有内容 请否定字符类 如下
  • 如何使用 PHP preg_replace 链接 Twitter 用户名?

    我想搜索我的 Twitter 状态对象的文本属性并将 username 替换为 a href username a 到目前为止我尝试过的看起来像这样 pattern 1 a zA Z0 9 replace a href 1 2 a new
  • 黑白随机着色的六角格子

    我正在尝试绘制一个 10 000 x 10 000 随机半黑半白的六边形格子 我不知道如何将该格子的六边形随机填充为黑色和白色 这是我真正想要从这段代码中得到的示例 但我无法做到 https i stack imgur com RkdCw
  • 从字符串中提取第一个数字

    我有一个字符串 thisLine 其中包含由空格分隔的 11 个数字 我只想获取第一个数字 我尝试了命令 grep d d thisLine value TRUE 它返回整个字符串 而不是第一个数字 如何只返回第一个数字 我确信有很多可能性
  • “通用”电话号码的基本正则表达式

    我需要一个正则表达式 用于 ASP NET 网站 来验证电话号码 它应该是灵活的 唯一的限制是 应至少为 9 位数字 没有字母 可以包含空格 连字符 单个 我搜索过 SO 和 Regexlib com 但我得到的表达式有更多限制 例如英国电
  • PHP中用逗号分解复杂字符串

    我需要分割一个包含逗号的字符串 我已经找到了类似字符串的东西 str getcsv A B with a comma eh C 但我的字符串是这样的 例如值没有包含字符 A B one two C 我需要分解它并获得 array 3 0 g
  • 正则表达式 - 检查输入是否仍有机会匹配

    我们有这样的正则表达式 var regexp one two three 所以只有像这样的字符串 one two three or one two three four or one twotwo three 等会匹配它 但是 如果我们有类
  • 尝试在 Linux 上使用 Clang++ 编译 c++11 正则表达式教程时出错

    我正在努力追随本教程 http solarianprogrammer com 2011 10 12 cpp 11 regex tutorial 关于 C 11 中的正则表达式 当我尝试编译这个小代码示例时 我收到这些错误 clang std
  • 理解高斯混合模型的概念

    我试图通过阅读在线资源来理解 GMM 我已经使用 K 均值实现了聚类 并且正在了解 GMM 与 K 均值的比较 以下是我的理解 如有错误请指出 GMM 类似于 KNN 在这两种情况下都实现了聚类 但在 GMM 中 每个簇都有自己独立的均值和
  • 仅在大括号外的空格上分割字符串

    我是正则表达式新手 我需要一些帮助 我阅读了一些与此问题类似的主题 但我不知道如何解决它 我需要在不在一对大括号内的每个空格上分割一个字符串 大括号外的连续空格应被视为单个空格 TEST test test test test test t
  • 正则表达式不等于字符串

    我用正则表达式用头撞墙 我正在尝试定义一个表达式 该表达式完全排除此文本 System 不区分大小写 但可以包含 系统 这个词提供的不仅仅是这个 例子 系统 无效 系统 无效 系统 无效 系统 无效 asd 系统 有效 asd 系统 asd
  • 正则表达式字符串中第一个和最后一个非点的位置

    我希望找到字符串的第一个和最后一个非点元素的位置 理想情况下我想这样做regex在基地R 我已经写过R解决问题的代码 不过 我对一个感兴趣regex解决方案 感谢您的任何建议 这是一个示例数据集和R代码以获得所需的结果 此代码拆分字符串并使
  • 正则表达式接受 4 条规则中的 3 条

    我似乎无法让正则表达式正确满足以下要求 长度在 8 到 20 之间的字符串 必须包含至少 1 个大写字母字符 至少 1 个小写字母字符 以及至少 1 个数字或至少 1 个特殊字符字符 或两者 假设特殊字符仅限于包括 我最初是这样写的 A Z
  • 文件名的正则表达式模式

    如果文件名符合以下条件 用户可以将文件放入服务器 它必须以 abc 开头 然后是一个点和一个数字 Valid file names abc 2344 abc 111 Invalid abcd 11 abc ab12 正则表达式是什么 我不能
  • MATLAB - 冲浪图数据结构

    我用两种不同的方法进行了计算 对于这些计算 我改变了 2 个参数 x 和 y 最后 我计算了每种变体的两种方法之间的 误差 现在我想根据结果创建 3D 曲面图 x gt on x axis y gt on y axis Error gt o

随机推荐

  • 如何在反应中将商品添加到购物车页面

    当用户单击 添加到购物车 按钮时 我尝试将商品添加到购物车页面 import React from react import bootstrap import useParams from react router dom function
  • -fprofile-use 和 -fauto-profile 之间有什么区别?

    有什么区别 fprofile use and fauto profile 这是文档所说的 https gcc gnu org onlinedocs gcc Optimize Options html Optimize Options htt
  • 流数据和 Hadoop? (不是 Hadoop 流)

    我想使用 MapReduce 方法分析连续的数据流 通过 HTTP 访问 因此我一直在研究 Apache Hadoop 不幸的是 Hadoop 似乎希望以固定大小的输入文件开始作业 而不是在新数据到达时将其传递给消费者 事实确实如此 还是我
  • Oracle SQL 中的有向图使用递归查询仅访问每个节点一次

    描述 在我们的问题域中 我们正在研究一组连接在一起形成图的边 从给定的节点 或多个节点 开始 我们必须列出整个图中连接到给定节点 或多个节点 的所有链接 我们必须从左到右 从上到下显示这些链接 对于循环数量有限的图 我们有一个针对此问题的有
  • 无法从 Kubernetes 获取 apiVersions:无法检索服务器 API 的完整列表

    尝试部署应用程序时出现如下错误 Error UPGRADE FAILED could not get apiVersions from Kubernetes unable to retrieve the complete list of s
  • 使用 -L 添加 link_library 时,Cmake 未设置 RPATH

    按以下方式设置链接库时 target link libraries SOME TARGET L somedir lfoo cmake 不处理 RPATH 使用 L 和 l 不是最佳实践 还是实际上完全错误 创建我自己的 Find cmake
  • 是否有 PHP 的 identicon 库 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在寻找一个可以创建的 PHP 库 函数 类识别图标 http en wikipedia org wiki Identicons 我用这个 clas
  • 如何从本地文件夹安装/更新 powershell 模块 - 设置内部模块存储库

    我需要在一台生产机器上安装 PowerShell 模块 即 sqlserver 但是 生产服务器没有任何互联网连接 我使用的另一种方法是使用 save module 将模块文件保存到共享文件夹中 然后将文件从共享文件夹直接复制到生产服务器的
  • git ls-remote --tags:如何获取日期信息?

    我在用git ls remote tags
  • XTS 中滚动列表的时间不等

    我有报价级别的股票数据 并且想创建前 10 秒所有报价的滚动列表 下面的代码可以工作 但对于大量数据需要很长时间 我想矢量化这个过程或以其他方式使其更快 但我没有想出任何办法 任何正确方向的建议或推动将不胜感激 library quantm
  • 如何使用 systemctl systemd 启动 svnserve

    debian jessie 中的 subversion 软件包不包含 systemd 服务文件 自动启动的最简单解决方案是什么 我尝试 Unit Description Subversion protocol daemon After sy
  • C++ 中将值作为常量、引用和常量引用返回有何含义?

    我正在学习C 但我仍然对此感到困惑 在 C 中将值作为常量 引用和常量引用返回有何含义 例如 const int exampleOne int exampleTwo const int exampleThree 以下是您所有案件的内幕 通过
  • 使用委托将数据从一个 TableView 传输到另一个 TableView

    我需要从一个传输一个字符串tableview通过单击一个内的按钮到另一个UITableView 我知道如何获得indexPath通过按钮 如下所示 let button sender as MyButton let view button
  • Powerpoint 2010 多个实例

    我在这里看到了很多关于这个主题的帖子 但似乎没有一个直接回答这个问题 我想控制在第二台显示器上运行的两个 Powerpoint 实例 理想的解决方案如下所示 PowerPoint Application PPTViewer1 new Pow
  • Spring MVC 处理会话过期

    我正在与Jboss EAP 6 2 Java EE 6 and Spring MVC 4 0 2 当会话过期时 我想执行页面重定向 我开发了一个 Spring 拦截器 Component public class SessionExpire
  • 分割seeds.rb文件[重复]

    这个问题在这里已经有答案了 My seeds rb文件变得非常大 重构文件中数据的最佳方法是什么 我可以将数据放入各种文件中吗 require他们在seeds rb file 我们将所有种子存储在文件夹中db seeds并在里面db see
  • 等待异步调用在完成块内完成

    我目前正在开发一个 POC 应用程序 我之前曾在这里发布过相关内容 https stackoverflow com questions 47418653 nsurlsessiondatatask authentication challen
  • 基于 Licenses.licx 的 .Net 组件许可模型如何工作?

    我遇到过多个使用许可方案的第三方 Net 组件供应商 在评估副本上 组件会显示导航屏幕或水印或某些此类指示器 在获得许可的机器上 许可证 licx被创建 看起来是什么just程序集全名 标识符 构建客户端程序集时必须包含此文件 这个模型如何
  • 从 NOT EXISTS 转换为 NOT IN

    我有三张桌子 sailor 姓名 评级 boat 名称 颜色 等级 reservation sname bname 工作日 开始 结束 为了获得预订每艘红船的水手名单 我有 select s sname from sailor s wher
  • 从字符串中提取除方括号中的单词之外的所有单词

    我再次完全陷入创建正则表达式的困境 我有一个字符串模式 例如 str wordA wordAB xyz wordABC x 所以总有一个词后面跟有括号里的东西 或空括号 单词的长度 前导和尾随空格以及括号内的字符数是随机的 该序列重复的频率