[PLUTO-help] Controllo Stringa

sabpll a libero.it sabpll a libero.it
Gio 15 Apr 2004 00:45:10 CEST


Alle 17:00, mercoledì 14 aprile 2004, Pignedoli Luca ha scritto:
> Il problema e' un'altro, io non devo isolare il numero di telefono, ma
> controllare se una stringa contiene dei numeri o delle lettere, questa
> stringa pero' puo' iniziare con uno spazio vuoto, con il segno + o
> direttamente con un numero. Es:
>
> " 61 3 955 0 3500"
> " 0522 658955"
> "+39 0522 564886"
> " +39 0 522 6589 56"
> "002556488233"
> [...]

In questo caso l'espressione regolare è un'altra

hylafax | grep -E '^( {0,1}|\+)([0-9 ]+)$'

Comunque questi sono solo spunti, è ovvio che programmare è
compito del programmatore...
altrimenti mi passi una percentuale ;-)
L'espressione regolare serve a riconoscere se una stringa
appartiene ad un certo repertorio, nel nostro caso se una
stringa alfanumerica è un numero di telefono.
Isolare il numero di telefono e passarlo allo script perl
è la seconda parte del lavoro.

Considera il seguente script:

#!/bin/bash
stringa=$*
    risultato=`echo $stringa | grep -E  '^( {0,1}|\+)([0-9 ]+)$'`
    if [ risultato ]
      then
        echo $stringa "è un numero di telefono che appartiene a..."
      else
        echo $stringa "non è un numero di telefono"
   fi

copialo nel file telefono, rendilo eseguibile e prova:
./telefono "+0345 1313 1342"
./telefono "Pippo Baudo"

Spero che questo ti dia un'idea di come fare, credo però che
uno script in perl sia più efficiente.
Aspetto il pagamento ;-)
-- 
Sabatino

(w) Quando le cose stanno andando bene, peggioreranno.
(x) Quando le cose stanno andando male, peggioreranno.
(y) Quando le cose non possono andare peggio, peggioreranno lo stesso.
(z) Quando le cose sembrano andar bene, non hai visto quel che è successo.



More information about the pluto-help mailing list