2016-04-25 61 views
-2

我想问一下读取正则表达式模式。我有一个正则表达式模式我应该如何阅读这个bash的正则表达式?

"/^[ \t]*\/\*<O$firstline>\*\//,/^[ \t]*\/\*<\/O$firstline>\*\//s/\/\///g" $Path/DebugVersion.c 

我应该如何阅读这种模式?我需要关于这个正则表达式的解释。如果有人能向我解释这一点,你可以回答这个问题。如果你回答这个问题,我很感激。

方面, Gustina M.S

+0

你知道什么? – hek2mgl

回答

2

这实际上看起来像一个sed表达,它由表达范围内的两个正则表达式,以及在搜索另一个正则表达式的/替换命令。该命令的基本结构是:

/START_EXPRESSION/,/END_EXPRESSION/ COMMAND 

START_EXPRESSIONEND_EXPRESSION都是正则表达式,并COMMAND_EXPRESSIONsed命令,将在这两个之间的表达式(含),每行执行。

只是要清楚,范围表达式为:

/^[ \t]*\/\*<O$firstline>\*\//,/^[ \t]*\/\*<\/O$firstline>\*\// 

或者拆分,最多多一点:

  • START_EXPRESSION:/^[\ t] */**//
  • END_EXPRESSION:/^[\吨] */* </O $ FIRSTLINE> * //

COMMANDs/\/\///g

评论者提供给https://regex101.com/的链接应该可以帮助您了解各个模式,并且sed手册页也将成为有用的资源。

+0

我在https://regex101.com/中搜索过,我还没有找到符号“s”和“g”的含义。但是我找到了另一个正则表达式。你能向我解释一下命令部分,或者你能给我一些关于它的参考吗?谢谢 –

+0

['sed'手册页](http://man7.org/linux/man-pages/man1/sed.1.html) – larsks