Je trouve que cette procedure est un bel exemple technique.
SPH a raison, l’exemple n’est pas compréhensible à la première lecture.
En ajoutant ‘=‘ + l’usage dans une variable cela le devient.
Code : Tout sélectionner
Procedure.s Acronyme(sTexte.s)
PROTECTED car.c
T$ = RemoveString(sTexte,"des ",#PB_String_NoCase)
T$ = RemoveString(T$,"de ",#PB_String_NoCase)
T$ = RemoveString(T$,"ces ",#PB_String_NoCase)
T$ = RemoveString(T$,"ce ",#PB_String_NoCase)
T$ = RemoveString(T$,"les ",#PB_String_NoCase)
T$ = RemoveString(T$,"le ",#PB_String_NoCase)
T$ = RemoveString(T$,"un ",#PB_String_NoCase)
T$ = RemoveString(T$,"une ",#PB_String_NoCase)
;(tu ajoutes ce que tu veux)
nCompteur = CountString(T$, " ") + 1
For nIndex = 1 To nCompteur
car=Asc(Left(StringField(T$, nIndex, " "),1))
If (car >= 'A' And car =< 'Z') Or (car >= 'a' And car =< 'z')
sMot.s = Left(StringField(T$, nIndex, " "),1)
sResultat.s + sMot
EndIf
Next
ProcedureReturn UCase(sResultat)
EndProcedure
Debug Acronyme("Nouvel institut national des jeunes aveugles")