Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations
d'une chaîne de caractères, en particulier de scinder les caractères
accentués en deux caractères successifs (la lettre sans accent et
l'accent sans lettre). Ainsi, "Du mélèze brûle dans l'âtre" devient "Du
me´le`ze bru^le dans l'a^tre". Après, il suffit de parcourir cette
chaîne en éliminant tous les accents.
Laurent
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations
d'une chaîne de caractères, en particulier de scinder les caractères
accentués en deux caractères successifs (la lettre sans accent et
l'accent sans lettre). Ainsi, "Du mélèze brûle dans l'âtre" devient "Du
me´le`ze bru^le dans l'a^tre". Après, il suffit de parcourir cette
chaîne en éliminant tous les accents.
Laurent
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations
d'une chaîne de caractères, en particulier de scinder les caractères
accentués en deux caractères successifs (la lettre sans accent et
l'accent sans lettre). Ainsi, "Du mélèze brûle dans l'âtre" devient "Du
me´le`ze bru^le dans l'a^tre". Après, il suffit de parcourir cette
chaîne en éliminant tous les accents.
Laurent
Oupsss AV !!!
me semble-t-il "el argentino @ jean naimar" n'est point le broutard !!!!
je pencherai pour une Lyonnaise... ;o)))
Oupsss AV !!!
me semble-t-il "el argentino @ jean naimar" n'est point le broutard !!!!
je pencherai pour une Lyonnaise... ;o)))
Oupsss AV !!!
me semble-t-il "el argentino @ jean naimar" n'est point le broutard !!!!
je pencherai pour une Lyonnaise... ;o)))
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués en deux
caractères successifs (la lettre sans accent et l'accent sans lettre). Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre". Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués en deux
caractères successifs (la lettre sans accent et l'accent sans lettre). Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre". Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués en deux
caractères successifs (la lettre sans accent et l'accent sans lettre). Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre". Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.
Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:
Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Alain CROS
"Laurent Longre" a écrit dans le message de news:
#
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.
Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:
Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Alain CROS
"Laurent Longre" <nospam@free.fr> a écrit dans le message de news:
#XCU6HJFFHA.2876@TK2MSFTNGP12.phx.gbl...
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.
Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:
Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Alain CROS
"Laurent Longre" a écrit dans le message de news:
#
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >
Pour Misange : FoldString permet de faire différentes tranformations d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" a écrit dans le message de
news:Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" <Personne@ICI> a écrit dans le message de
news:u2h1xcNFFHA.2676@TK2MSFTNGP12.phx.gbl...
Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.
Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:
Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" a écrit dans le message de
news:Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me retourne
une chaîne vide.Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Starwing wrote:Moi, mes bouquins, ../.. ../.., je les imprimes via Internet....
Profites-en rapidement notre misange n'a pas encore interdit la recopie
;o)))
@+
--
Au plaisir de vous revoir ...
Visitez >> http://www.excelabo.net
Le merveilleux site de Misange
Starwing
Starwing wrote:
Moi, mes bouquins, ../.. ../.., je les imprimes via Internet....
Profites-en rapidement notre misange n'a pas encore interdit la recopie
;o)))
@+
--
Au plaisir de vous revoir ...
Visitez >> http://www.excelabo.net
Le merveilleux site de Misange
Starwing
brault-lavoieNOSPAM@sympatico.ca
Starwing wrote:Moi, mes bouquins, ../.. ../.., je les imprimes via Internet....
Profites-en rapidement notre misange n'a pas encore interdit la recopie
;o)))
@+
--
Au plaisir de vous revoir ...
Visitez >> http://www.excelabo.net
Le merveilleux site de Misange
Starwing
Merci.
Donc pas besoin que je me prenne la tête.
Une autre petite question en passant.
Mon fichier d'aide comporte un bouton Quick Info qui me donne pour
FoldString:
Windows NT Yes
Win95 No
Win32s Yes
Mon Win98 correspond au Win95.
Mais la différence entre Windows NT et Win32s m'échappe.
Si tu as une piste?
Alain CROS
"Michel Pierron" a écrit dans le message de news:
OBVx$
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" a écrit dans le message de
news:Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me
retourne
une chaîne vide.Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Merci.
Donc pas besoin que je me prenne la tête.
Une autre petite question en passant.
Mon fichier d'aide comporte un bouton Quick Info qui me donne pour
FoldString:
Windows NT Yes
Win95 No
Win32s Yes
Mon Win98 correspond au Win95.
Mais la différence entre Windows NT et Win32s m'échappe.
Si tu as une piste?
Alain CROS
"Michel Pierron" <michel.pierron@free.fr> a écrit dans le message de news:
OBVx$yNFFHA.2564@tk2msftngp13.phx.gbl...
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" <Personne@ICI> a écrit dans le message de
news:u2h1xcNFFHA.2676@TK2MSFTNGP12.phx.gbl...
Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me
retourne
une chaîne vide.
Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:
Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Merci.
Donc pas besoin que je me prenne la tête.
Une autre petite question en passant.
Mon fichier d'aide comporte un bouton Quick Info qui me donne pour
FoldString:
Windows NT Yes
Win95 No
Win32s Yes
Mon Win98 correspond au Win95.
Mais la différence entre Windows NT et Win32s m'échappe.
Si tu as une piste?
Alain CROS
"Michel Pierron" a écrit dans le message de news:
OBVx$
Bonjour Alain;
Rien; il te faut un OS type NT
MP
"Alain CROS" a écrit dans le message de
news:Bonjour.
Cette fonction très intéressante ne fonctionne pas chez moi et me
retourne
une chaîne vide.Après investigation, l'erreur retournée = 120 et un petit coup de
formatmessage me donne:Cette fonction n'est valide qu'en mode Win32.
Mon OS ---> Win98.
Qu'est ce que je peux faire docteur?
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" a écrit dans le message de
news:%
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
desmiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deuxcaractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" <nospam@free.fr> a écrit dans le message de
news:%23XCU6HJFFHA.2876@TK2MSFTNGP12.phx.gbl...
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" a écrit dans le message de
news:%
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
desmiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== > >
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== > >
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deuxcaractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" a écrit dans le message de
news:%
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
desmiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >>
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >>
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deuxcaractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" <nospam@free.fr> a écrit dans le message de
news:%23XCU6HJFFHA.2876@TK2MSFTNGP12.phx.gbl...
Salut Michel,
Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
de
smiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >>
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _
ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >>
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deux
caractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,
"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,
il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent
Ce Laurent, il me surleculte; il a toujours une carte en réserve qu'il
dévoile si on l'y pousse;
Quitte à passer pour un pisse-frois, la fonction FoldString ignore un
certain nombre de caractères; par exemple, elle ignore entre autres:
ð que personnellement, j'utilise assez peu, mais aussi o qu'il m'arrive
d'utiliser (rarement, je le concède).
Testé avec la chaîne:
"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÑÒÓÔÕÖOSÙÚÛÜÝYZàáâãäåæçèéêëìíîïðñòóôõöosùúûüýÿz"
MP
"Laurent Longre" a écrit dans le message de
news:%
Salut Michel,Est-ce que je peux ajouter un grain de sel(poivre)? Après avoir tester
100000 "SansAccents" la mehode de MD est la plus rapide et la seule
sans
erreur. Désolé si il ya a un motif de bisbille !!! :) (premier essai
desmiley)
Oups, je ne savais pas qu'il s'agissait de faire des benchmarks ;-)
On peut accélérer très nettement la version "API" comme ça :
' ========================== >>
Private Declare Function FoldString Lib "kernel32" Alias "FoldStringA" _
(ByVal dwMapFlags As Byte, ByVal lpSrcStr As Long, ByVal cchSrc As
Long, _ByVal lpDestStr As Long, ByVal cchdest As Long) As Long
Function SANSACCENTS(Texte As String) As String
Dim I As Integer
SANSACCENTS = Space(Len(Texte))
For I = 0 To Len(Texte) * 2 - 2 Step 2
FoldString &H40, StrPtr(Texte) + I, 1, StrPtr(SANSACCENTS) + I, 1
Next I
End Function
' ========================== >>
Pour Misange : FoldString permet de faire différentes tranformations
d'une
chaîne de caractères, en particulier de scinder les caractères accentués
en deuxcaractères successifs (la lettre sans accent et l'accent sans lettre).
Ainsi,"Du mélèze brûle dans l'âtre" devient "Du me´le`ze bru^le dans l'a^tre".
Après,il suffit de parcourir cette chaîne en éliminant tous les accents.
Laurent