|
Iniciado por adrianoboller, nov., 18 2014 2:03 PM - 1 resposta |
| |
| | | |
|
| |
Membro registado 3.655 mensagems Popularité : +175 (223 votes) |
|
Publicado em novembro, 18 2014 - 2:03 PM |
Procedure Capitalize(LOCAL Texto)
ChangeCharset(charsetOccidental)
IF Texto <> Null AND Texto <> "" Texto = NoAccent(Texto)
Texto = Lower(Texto)
Texto = Upper(Middle(Texto,1,1)) + Middle(Texto,2,Length(Texto))
nEspaco01 is int = PositionOccurrence(Texto," ",firstRank,FromBeginning) + 1 IF nEspaco01 > 1 THEN Texto = Middle(Texto,1,nEspaco01-1) + Upper(Middle(Texto,nEspaco01,1)) + Middle(Texto,nEspaco01+1,Length(Texto)) END
TOT is int = 0 POS1, POS2, POS3 is int = 0 TOT = Length(Texto) LOOP (TOT) POS1 +=1 POS2 = POS1 + 1 POS3 = POS2 + 1 IF Middle(Texto,POS1,1) = " " AND Middle(Texto,POS2,1) <> " " Texto = Middle(Texto,1,POS1) + Upper(Middle(Texto,POS2,1)) + Middle(Texto,POS3,TOT) END END
Texto = Replace(Texto," Da ", " da ")
Texto = Replace(Texto," Das ", " das ")
Texto = Replace(Texto," De ", " de ")
Texto = Replace(Texto," Do ", " do ")
Texto = Replace(Texto," Dos ", " dos ")
END
RESULT(Texto) |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.655 mensagems Popularité : +175 (223 votes) |
|
Publicado em dezembro, 07 2019 - 4:25 PM |
Procedure Capitalize(Texto)
x is int
nome, resultado is string
IF Texto <> "" THEN nQtdpalavras is int = StringCount(Texto," ") + 1 LOOP(nQtdpalavras) x++ nome = ExtractString(Texto,x," ",FromBeginning) IF Lower(nome) = "da" OR Lower(nome) = "das" OR Lower(nome) = "de" OR Lower(nome) = "di" OR Lower(nome) = "do" OR Lower(nome) = "dos" resultado += Lower(nome) + " " ELSE resultado += Upper(Middle(nome,1,1)) + Lower(Middle(nome,2,Length(nome))) + " " END END END
RESULT resultado
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
|