Progress - cantidad de palabras

 
Vista:

cantidad de palabras

Publicado por Juan (1 intervención) el 11/02/2011 16:05:23
Hola, buenos dias no se si me podrian ayudar tengo este programa:

DEFINE VARIABLE l-Straux AS CHAR NO-UNDO.
DEFINE VARIABLE l-dirinput AS CHAR NO-UNDO.
DEFINE VARIABLE l-Recid AS RECID.
DEFINE VARIABLE l-conta AS INTEGER.
DEFINE VARIABLE l-palabra AS CHAR NO-UNDO.
DEFINE VARIABLE l-conta2 AS INT NO-UNDO.

l-dirinput = "c:\Documents\".
INPUT FROM "c:\Documents\contrato.txt".
l-conta = 0.
REPEAT:
IMPORT UNFORMATTED l-Straux.
l-conta = l-conta + 1.
END.

DISPLAY l-conta.
INPUT CLOSE.

El cual me lee el numero de lineas que contiene ese archivo, pero tambien quiero saber cuantas palabras contiene el archivo la unica manera que se me ocurre es identificando los espacios en blanco entre palabras pero no sabria como hacerle me podrian ayudar?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:cantidad de palabras

Publicado por Richard (18 intervenciones) el 15/02/2011 23:23:08
Podrías utilizar:

intCuentaPalabras = NUM-ENTRIES(l-Straux, " ").

el inconveniente es si tienes mas de un espacio en blanco, porque no es lo mismo:

"uno dos tres"

que:

"uno dos tres".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cantidad de palabras

Publicado por Sergio (1 intervención) el 22/02/2011 20:12:58
DEFINE VARIABLE I-Straux AS CHAR NO-UNDO.
DEFINE VARIABLE l-dirinput AS CHAR NO-UNDO.
DEFINE VARIABLE l-Recid AS RECID.
DEFINE VARIABLE l-cntLineas AS INTEGER NO-UNDO.
DEFINE VARIABLE l-cntPalabras AS INTEGER NO-UNDO.

l-dirinput = "c:\Documents\".
INPUT FROM "c:\Documents\contrato.txt".
l-conLineas = 0.
i-cntPalabras = 0.
REPEAT:
IMPORT UNFORMATTED l-Straux.
l-cntLineas = l-cntLineas + 1.
DO WHILE INDEX(i-strAux,' ') > 0:
i-strAux = REPLACE(i-strAux,' ',' ').
END.
I-cntPalabras = i-cntPalabras + NUM-ENTRIES(i-strAux,' ').
END.
INPUT CLOSE.
DISPLAY l-cntLineas i-cntPalabras.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar