wie Sie abschneiden, einen string mit Hilfe regulärer Ausdruck in perl

Ich habe folgenden string in einer Datei und wollen, kürzen Sie die Zeichenfolge, um nicht mehr als 6 char. wie zu tun, dass die Verwendung regulärer Ausdruck in perl?

die original-Datei ist:

Katze shortstring.in:

<value>[email protected]</value>
<value>[email protected]</value>

Möchte ich, um die Datei als:

Katze shortstring.aus

<value>1234@g</value>
<value>1235@g</value>


Ich habe einen code wie folgt, gibt es keine effizientere Methode als die Verwendung

s/<value>(\w\w\w\w\w\w)(.*)/$1/;?

Ist hier ein Teil von meinem code:

    while (<$input_handle>) {                        # take one input line at a time
            chomp;
            if (/(\[email protected])/) {
                    s/(<value>\w\w\w\w\w\w)(.*)</value>/$1/;
                    print $output_handle "$_\n";
              } else {
              print $output_handle "$_\n";
            }
    }
  • ist kein Wort-Zeichen, damit ist nicht abgestimmt mit \w. Außerdem denke ich, dass Sie nicht bedeuten, zu entfernen <value> Teil?
InformationsquelleAutor user399517 | 2010-08-03
Schreibe einen Kommentar