Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:24 Der er 12 kommentarer og
1 løsning

Replace() funktion for VB 5 ?

Er der en der har en ORDENTLIGT Replace() funktion for VB 5? Dem jeg har fundet på PSC er ikke en disse værd :-(
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:32 #1
Public Function Replace(ByVal strString As String, ByVal _
strReplaceWith As String, ByVal strReplace As String) As String


Dim i As Long
    Dim strTemp As String

    i = 1
    Do While InStr(i, strString, strReplace, vbTextCompare) <> 0
        strTemp = strTemp & Mid(strString, i, InStr(i, _
            strString, strReplace, vbTextCompare) - i) & strReplaceWith
        i = InStr(i, strString, strReplace, vbTextCompare) + Len(strReplace)
    Loop
    strTemp = strTemp & Right(strString, Len(strString) - i + 1)
    Replace = strTemp
End Function
Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:34 #2
hmmm ... prøver den lige ...
Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:34 #3
Hvor er den fundet henne ?
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:35 #4
eller :
Public Function Replace(ByVal vntValue As Variant, ByVal strSource As String, ByVal strDest As Variant) As Variant
\'Purpose    Replace part of a string by another.
\'Inputs    vntValue    Value where execute substitution
\'          strSource  String to replace
\'          strDest    String replacement
\'Assumes
\'Returns
\'Effects
Dim i, j As Integer
Dim intLngDest As Integer, intLngSource As Integer

    If IsNull(vntValue) Then
        Exit Function
    End If
    If strSource <> strDest Then
        intLngDest = Len(strDest)
        If intLngDest = 0 Then
            intLngDest = 1
        End If
        intLngSource = Len(strSource)
   
        i = 1
        j = InStr(i, vntValue, strSource)
        While j <> 0
            vntValue = Left(vntValue, j - 1) & strDest & Right(vntValue, Len(vntValue) - (j + intLngSource - 1))
            i = j + intLngDest
            j = InStr(i, vntValue, strSource)
        Wend
    End If
    Replace = vntValue
End Function

Avatar billede jelzin101 Praktikant
13. september 2001 - 23:36 #5
nr2 er fra : http://www.ifrance.com/stephanew/vbReplace.htm

nr1 var noget jeg engang har brugt i et andet prog. (kan ikke huske hvor jeg har \"lånt\" den.
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:38 #6
fandt også noget på msdn : http://msdn.microsoft.com/vbasic/technical/00pasttips.asp#2-14-00

-led efter \"globally replace\"
Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:40 #7
Nr. 1 ser ud til at virke helt perfekt .. mange tak :-)
Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:40 #8
Ved du hvad man skal bruge for at kunne bruge RegExp i VB 5 ?
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:40 #9
np :) tak for pts.
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:41 #10
jep du skal hente en dll fil (du kan faktisk hente den fra http://msdn.microsoft.com/vbasic/technical/00pasttips.asp#2-14-00

under global replace
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:43 #11
Avatar billede tdaugaard Nybegynder
13. september 2001 - 23:44 #12
Har fundet den :o)
Du får sku lige 30 point mere som tak for RegExp .. tænkte på at oprette spm. om det meen .. gad sku ikke ;o)
Avatar billede jelzin101 Praktikant
13. september 2001 - 23:45 #13
takker :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester