fork download
  1. #!/usr/bin/perl
  2. use strict;
  3.  
  4. my $str = 'AMQ8409: Display Queue details.
  5. QUEUE(SYSTEM.DATATYPE.REPLY.QUEUE) TYPE(QLOCAL)
  6. ACCTQ(QMGR) ALTDATE(2016-08-01)
  7. ALTTIME(18.33.20) BOQNAME( )
  8.  
  9. AMQ8409: Display Queue details.
  10. QUEUE(SYSTEM.DATATYPE.REQUEST.QUEUE) TYPE(QLOCAL)
  11. ACCTQ(QMGR) ALTDATE(2016-08-01)
  12. ALTTIME(18.32.37) BOQNAME( )
  13.  
  14. AMQ8409: Display Queue details.
  15. QUEUE(SYSTEM.MESSAGE.ASSOCIATION.QUEUE)
  16. TYPE(QLOCAL) ACCTQ(QMGR)
  17. ALTDATE(2016-08-01) ALTTIME(18.32.37)
  18.  
  19. AMQ8409: Display Queue details.
  20. QUEUE(SYSTEM.PENDING.DATATYPE.REPLY) TYPE(QLOCAL)
  21. ACCTQ(QMGR) ALTDATE(2016-08-01)
  22. ALTTIME(18.33.20) BOQNAME( )';
  23. my $regex = qr/^\s+QUEUE\(\K(?=.*DATATYPE)(?!.*REPLY)[^\)]*/mp;
  24.  
  25. if ( $str =~ /$regex/g ) {
  26. print ${^MATCH};
  27. }
  28.  
  29.  
Success #stdin #stdout 0s 17496KB
stdin
Standard input is empty
stdout
SYSTEM.DATATYPE.REQUEST.QUEUE