Internal/Code

sub StoreISBN { my ($num) = @_;

return &StoreRaw(&ISBNLink($num)); } sub ISBNALink { my ($num, $pre, $post, $text) = @_;

return ''. $text. ''; } sub ISBNLink { my ($rawnum) = @_; my ($rawprint, $html, $num, $numSites, $i);

$num = $rawnum; $rawprint = $rawnum; $rawprint =~ s/ +$//; $num =~ s/[- ]//g; $numSites = scalar @IsbnNames; # Number of entries if ((length($num) != 10) || ($numSites < 1)) { return "ISBN $rawnum"; } $html = &ISBNALink($num, $IsbnPre[0], $IsbnPost[0], 'ISBN ' . $rawprint); if ($numSites > 1) { $html .= ' (';   $i = 1;    while ($i < $numSites) {      $html .= &ISBNALink($num, $IsbnPre[$i], $IsbnPost[$i], $IsbnNames[$i]);      if ($i < ($numSites - 1)) {  # Not the last site        $html .= ', ';      }      $i++;    }    $html .= ')'; } $html .= " "  if ($rawnum =~ / $/);  # Add space if old ISBN had space. return $html; }

<- Das ist der Teil aus wiki.pl der die ISBN Links erzeugt. Die Aufgabe wΣre nun eine neue Funktion 'ASIN Link' ,da die ASIN zwar auch immer 10-stellig is ,aber neben "rawnumbers" auch Buchstaben enthalten kann.