首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从两个空格分隔的列中提取字符的Regex

从两个空格分隔的列中提取字符的Regex
EN

Stack Overflow用户
提问于 2017-09-15 12:22:30
回答 1查看 188关注 0票数 0

我需要一个regex表达式来解析一行。

分隔数据的空格数为2或更多,列值可以是一个或多个字,由一个空格隔开。

e.g

输入:

01 Active/Active VXSM_T1E1 MAJOR NA NO REDUNDANCY

因此,这一项的输出应该是:

01

Active/Active

VXSM_T1E1

MAJOR

NA

NO REDUNDANCY

输入:

01 Active/Active VXSM_T1E1 MAJOR NEXT NA NO REDUNDANCY ELEMENT

因此,这一项的输出应该是:

01

Active/Active

VXSM_T1E1

MAJOR NEXT

NA

NO REDUNDANCY ELEMENT

我一开始是:(\S+\s\s)x(\S+\s)+,但不能解决我所有的问题

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-15 12:43:06

您的尝试(\S+\s\s)|(\S+\s)+匹配这两种情况中的一种,即一个或多个字符后面跟着两个空格,或者一个或多个字符组后面跟着一个空格。

如果您查看您的需求,您需要将这两者作为一个单一的选择组合起来。您希望整个组后面有两个空格,并且您希望您的组包含单个空格。

(\S+\s)*\S+(\s\s|$)匹配0组或多组字符,后面是单个空格,后面是一个或多个字符,后面是两个空格或结束行。

这包括捕获中的尾随空格。如果这是不想要的,那么最后的捕获组应该是前瞻性的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46239494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档