首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于任意数量的数字,包括点、空格,然后是开始括号?

对于任意数量的数字,包括点、空格,然后是开始括号?
EN

Stack Overflow用户
提问于 2019-06-18 06:48:33
回答 2查看 126关注 0票数 2
代码语言:javascript
复制
word-3.3.7          (in xyz)
word-3.30.7          (in lib)
word-3.56          (in pwd)
word-3        (in abc)
word          (in lib)
word-32.3          (in pqr)
word-32.3.5          (in sfw)

我想要grep从随机文本列表中捕获这些输出。

基本上是一个grep正则表达式,它捕获了以下泛化文本:

单词\\word--任意数量的带有“.”的数字(在

我试过:

代码语言:javascript
复制
egrep "word [(in ]|word-[0-9].[0-9].[0-9] [(in ]"

但这并不是真正有效的,因为空白空间有限。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-18 06:52:05

您可以使用此grep

代码语言:javascript
复制
grep -oE '^([_[:alnum:]]+|[_[:alnum:]]+-[.0-9]+)[[:space:]]+\(in' file

代码语言:javascript
复制
word-3.3.7          (in
word-3.30.7          (in
word-3.56          (in
word-3        (in
word          (in
word-32.3          (in
word-32.3.5          (in

Regex详细信息:

  • ^:行启动
  • (:开始一个小组
  • [_[:alnum:]]+:匹配1+单词字符
  • |:或
  • [_[:alnum:]]+-[.0-9]+:匹配1+单词字符,后面跟着-和1+数字或点
  • );末端群
  • [[:space:]]+:匹配1+空格字符
  • \(in:匹配文字(in
票数 3
EN

Stack Overflow用户

发布于 2019-06-18 07:48:15

对于GNU grep,您可以使用:

代码语言:javascript
复制
grep -oP '^word(?:-\d+(?:\.\d+)*)*\s+\(in' word 
word-3.3.7          (in
word-3.30.7          (in
word-3.56          (in
word-3        (in
word          (in
word-32.3          (in
word-32.3.5          (in

其中word是文件:

代码语言:javascript
复制
some stuff
more stuff
word stuff
word-3.3.7          (in xyz)
word-3.30.7          (in lib)
word-3.56          (in pwd)
word-3        (in abc)
word          (in lib)
word-32.3          (in pqr)
word-32.3.5          (in sfw)
word-2 stuff
more stuff
some stuff

解释:

  • -oP仅用于显示输出并使用perl样式regex。
  • ^word行从word开始
  • (?: )非捕获群
  • -\d+一个破折号,后面跟着几个数字匹配,例如-3
  • (?:\.\d+)* --这将匹配.30.30.7,一个点,后面跟着0到N次出现的数字
  • \s+\(in空间字符后面是(in

演示:

https://regex101.com/r/0fYFcD/1/

注意:这个正则表达式比anubhava的正则表达式更有限制性,因为它强制要求行的开头是word

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

https://stackoverflow.com/questions/56643203

复制
相关文章

相似问题

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