grep -P'中的表达式是什么意思(?< =“uuid”:“)[\ w \ d =] *(?=”)'

时间:2016-07-28 11:34:29

标签: regex linux perl scripting grep

最近,我发现了一个使用-P选项的grep表达式。

它看起来像下面的代码:

grep -o -P '(?<="uuid":")[\w\d=]*(?=")'

,使用示例如下:

[root@rhel66 worktmp]# cat zdata2
{"valid":"2016-05-28T","uuid":"3BoZXJlLmxvY2FsZXhwaXJhdGlvbjoxNDY5Njk3NzEzMDAwOjVlY2ExMjg3YTBmMjdmNDk1M2YxZTk3ZmQwZTQ3MmFlOW",:"localdomain.local"}
[root@rhel66 worktmp]#
[root@rhel66 worktmp]# cat zdata2 | grep -o -P '(?<="uuid":")[\w\d=]*(?=")'
3BoZXJlLmxvY2FsZXhwaXJhdGlvbjoxNDY5Njk3NzEzMDAwOjVlY2ExMjg3YTBmMjdmNDk1M2YxZTk3ZmQwZTQ3MmFlOW
[root@rhel66 worktmp]#

我不明白这个表达的一部分。

  1. 什么是(?&lt; =“uuid”:“)是什么意思?(我不知道?&lt; = mean ..)
  2. 什么是(?=“)是什么意思?
  3. 感谢您提供任何帮助。

0 个答案:

没有答案