#!/usr/bin/perl
my $s = 'Public Function SheetReMake(ByVal sheetName As String) As Worksheet \' создает новую таблицу, если такая есть, то ее удаляет' .
'Private Sub tReMake(ByVal sheetName As String) As Worksheet \' создает новую таблицу, если такая есть, то ее удаляет' ;
while ( $s =~ /((public|private)*\s*(function|sub)+\s+(\w+)\(.*?\)(.*?))/igm ) {
print "Тип: " , $2 , " F/S:" , $3 , " Имя:" , $4 , " Весь текст:" , $& , "\n " ; }
IyEvdXNyL2Jpbi9wZXJsCm15ICRzID0gJ1B1YmxpYyBGdW5jdGlvbiBTaGVldFJlTWFrZShCeVZhbCBzaGVldE5hbWUgQXMgU3RyaW5nKSBBcyBXb3Jrc2hlZXQgXCcg0YHQvtC30LTQsNC10YIg0L3QvtCy0YPRjiDRgtCw0LHQu9C40YbRgywg0LXRgdC70Lgg0YLQsNC60LDRjyDQtdGB0YLRjCwg0YLQviDQtdC1INGD0LTQsNC70Y/QtdGCJy4KJ1ByaXZhdGUgU3ViIHRSZU1ha2UoQnlWYWwgc2hlZXROYW1lIEFzIFN0cmluZykgQXMgV29ya3NoZWV0IFwnINGB0L7Qt9C00LDQtdGCINC90L7QstGD0Y4g0YLQsNCx0LvQuNGG0YMsINC10YHQu9C4INGC0LDQutCw0Y8g0LXRgdGC0YwsINGC0L4g0LXQtSDRg9C00LDQu9GP0LXRgic7CndoaWxlKCRzID1+IC8oKHB1YmxpY3xwcml2YXRlKSpccyooZnVuY3Rpb258c3ViKStccysoXHcrKVwoLio/XCkoLio/KSkvaWdtKSB7CiAgcHJpbnQgItCi0LjQvzogIiwkMiwiICBGL1M6IiwkMywiINCY0LzRjzoiLCQ0LCIg0JLQtdGB0Ywg0YLQtdC60YHRgjoiLCQmLCJcbiI7Cn0K