【问题标题】:How to find a string that starts with number using egrep如何使用 egrep 查找以数字开头的字符串
【发布时间】:2017-10-27 12:52:17
【问题描述】:

我想找到一个以数字开头的单词,例如 6.1234, 4times, 4-times, 6, 68 .. 我试过这个: egrep -n "(^[0-9].*)" file.txt

【问题讨论】:

  • 你的结果如何?
  • 它不会在行中间找到单词
  • 给我们一个输入文件的例子
  • 输入文件:某事 6.1234 某事 18.11.1995 某事 6 次某事 6 次某事 6 某事 68 某事
  • @SamuelJurek 我们无法判断您的输入是如何从 cmets 格式化的...将其与预期输出一起添加到问题中,并查看 stackoverflow.com/editing-help

标签: linux unix grep


【解决方案1】:

试试这个

grep -ow '[0-9][^ ]*'

【讨论】:

  • 单词之间的TAB怎么样?你认为?*&!$ 都是与[0-9] 相匹配的单词的一部分吗?
  • 是的,你是对的,最好使用 [[:blank:]]。对于 ?*&!$,我不知道,我不是 OP。
【解决方案2】:

试试这个:

~'^[0-9]' 

它会返回以数字开头的结果。

【讨论】:

  • 它在这个输入文件中不起作用(输入文件:6.1234 的东西 18.11.1995 的东西 6 倍的东西 6 倍的东西 6 的东西 68 的东西)它不返回任何东西
猜你喜欢
  • 2022-08-11
  • 1970-01-01
  • 2011-08-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多