http://www.perlmonks.org?node_id=1047120

mariusz has asked for the wisdom of the Perl Monks concerning the following question:

Gents,

I have one problem with Perl, so I would appreciate if you could help to find the best solution for that.

In my company we use SunOne LDAP. I want to connect to cn=changelog and read all entries in this node.

Structure of one entry looks like that:

dn: changeNumber=123,cn=changelog objectClass: top objectClass: changelogentry ...something not important.... changes: BASE64_TEXT

When I try to read ($entry->get_value("changes")) and decode changes, then I received something like this:

replace: A A: new_value - add: NEW_VAR NEW_VAR: ABC - delete: ABC - replace: history history: 1 history: 2 history: 3 -

In my case on the output I want to get (single line):

ADD: NEW_VAR=ABC|REPLACE: A=NEW_VALUE, HISTORY=1,2,3|DELETE: ABC.

Is there any simple way to "PARSE" changes value? Unfortunately, type of this value is string..