Lorsque vous utilisez ASP pour traiter du texte. La fonction de détection de longueur de chaîne fournie avec le système n'est parfois pas très utile. Par exemple, un caractère chinois ne comptera que pour un octet. S'il s'agit uniquement de caractères chinois lors de la composition, il est facile de dire qu'il n'y a de toute façon aucune différence. Cependant, si la chaîne à manipuler contient à la fois des caractères chinois et des lettres anglaises, ce sera gênant. Les trois fonctions suivantes peuvent remplacer les fonctions associées fournies avec ASP.
Il y a aussi quelque chose à noter. S'il est utilisé dans une boucle, l'invariant i est également une variable couramment utilisée dans les boucles. Lorsque la fonction suivante est exécutée, la valeur de i changera si la même variable est utilisée dans la boucle qui appelle. des valeurs inconnues se produiront. Si le résultat est trouvé, veuillez utiliser un autre nom de variable.
L'utilisation suivante est la même que len(), left(), right().
code de programme
Copiez le code comme suit :
FonctionStrlength(Str)
Temp_Str=Len(Str)
Pour I=1 à Temp_Str
Test_Str=(Mid(Str,I,1))
Si Asc(Test_Str)>0 Alors
Longueur de longueur=Longueur de longueur+1
Autre
Longueur de longueur=Longueur de longueur+2
Fin si
Suivant
Fonction de fin
Fonction Strleft(Str,L)
Temp_Str=Len(Str)
Pour I=1 à Temp_Str
Test_Str=(Mid(Str,I,1))
Strgauche=Strgauche&Test_Str
Si Asc(Test_Str)>0 Alors
objectif=objectif+1
Autre
objectif=objectif+2
Fin si
Si objectif>=L puis quitter pour
Suivant
Fonction de fin
FonctionStrright(Str,L)
Temp_Str=Len(Str)
Pour i = Temp_Str à 1 pas -1
Test_Str=(Mid(Str,I,1))
Strright=Test_Str&Strright
Si Asc(Test_Str)>0 Alors
objectif=objectif+1
Autre
objectif=objectif+2
Fin si
Si objectif>=L puis quitter pour
Suivant
Fonction de fin