将一行C正则表达式代码转换为Perl

我正在尝试将一行旧代码从 C(我不知道)转换为 Perl(我有点知道)。

它有一个我不明白的数据结构,即一个数字后跟 /* 字符 */

if (lSeries != 18 /*S*/ &&  lSeries !=  2 /*C*/ && lSeries != 4  /*E*/ &&  lSeries != 6  /*G*/) {}

回答

在 C 中,/* ... */结构表示注释。它不会被程序编译或执行。

所以该代码片段的可执行部分是

if (lSeries != 18 && lSeries != 2 && lSeries != 4 
    && lSeries != 6) {}

Perl 的字面翻译是

if ($lSeries != 18 && $lSeries != 2 && $lSeries != 4
    && $lSeries != 6) { }


回答

/* 多行注释的 C 风格 */

代码:

if(  lSeries != 18 /*S*/
  && lSeries != 2  /*C*/
  && lSeries != 4  /*E*/
  && lSeries != 6  /*G*/  
) {}

#perl 风格的单行注释。更多请参考Acme::Comment

珀尔代码:

if(  $lSeries != 18 #S
  && $lSeries != 2  #C
  && $lSeries != 4  #E
  && $lSeries != 6  #G 
) {}


以上是将一行C正则表达式代码转换为Perl的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>