HP-User: Inhaltswerte in String bearbeiten

Beitrag lesen

Morgen Forum

Mit dieser Perlzeile:

  
print Text::Table::Tiny::table(rows => $rows, header_row => 1);  
print " \n";  

Erhalte ich diese Daten im Terminal:

+----------+----------+----------+---------------+--------------+-------+---------------+--------+-------------------+-----------+---------+--------------------+| kdnummer | kddatum  | kdfirma  | kdstrasse     | kdhausnummer | kdplz | kdort         | kdland | kdansprechpartner | kdtelefon | kdfax   | kdemail            |+----------+----------+----------+---------------+--------------+-------+---------------+--------+-------------------+-----------+---------+--------------------+| 100100   | 20120917 | MaxTech  | Musterstrasse | 11           | 79576 | Weil am Rhein | D      | Herr Müller      | 123456    | 123456  | service@maxtech.de || 100100   | 20120917 | Testshop | Testweg       | 13           | 79618 | Rheinfelden   | D      | Frau Tester       | 123456    | 1234567 | test@tester.de     || 100100   | 20120917 | kjhkjh   | lkjlkj        | 45           | 78987 | ölkölk      | D      | Herr Lölle       | 321       | 654     | 654@mnbmn.de       |+----------+----------+----------+---------------+--------------+-------+---------------+--------+-------------------+-----------+---------+--------------------+  Datensatzsuche beendet! [ENTER]

Ich muss jetzt überprüfen, ob zwischen den "|" Strichen der enthaltene Text Umlaute enthält und wieviele. Für jeden gefundenen Umlaut, muss vor dem betreffendem Endstrich "|" ein Leerzeichen hinzugefügt werden "Space".

Prinzipiell ein Fall für RegEx. Aber RegEx kann soweit ich weiss, nur nach fix eingestelltem Muster suchen, aber nicht zählen. Ganz schön knifflige Angelegenheit.

  
print Text::Table::Tiny::table(rows => $rows(Hier müsste der Block hin, der Leerzeichen korrigiert), header_row => 1);  
print " \n";  

Gruß HP-User