grabrcsid | grabitemxtra | hash |
package xm::grabrcsid; use strict; use xm::o; sub DESC {" will look into CDOC/CSTR-blocks if they contain some RCS-Id String. Surround that portion with <INFORCSID>. "} sub DO { my $in = shift; # CDOC style $in =~ s{ < (CDOC|CSTR)(\s[^<>]*)? > ((?:.(?!</?\1[\s>]))*[^\$\<\>]) (\$(?:Id|Author): (?:[^\$\n](?!</\1[\s>]))+ \$) ((?:.(?!</?\1[\s>]))*.) (</\1(?:\s[^<>]*)?>) } { "<".$1.$2.">".$3."<INFORCSID>".$4."</INFORCSID>".$5 }gsex; return $in; } sub ARGS { return xm::o::args_stdin(@_,DESC); } sub main { return DO(xm::o::args_stdin(@_,DESC)); } 1;