Wubbable Skrevet 3. mars 2007 Del Skrevet 3. mars 2007 Si at jeg gjør slik: Textbox1.text = InStr("ABC-ABC-ABC-ABC", "B") Hvordan kan jeg returnere hver startposition av "B" ? Sånn som den er nå, blir returen 2, altså startpositionen av den første "B"en Any ideas? Lenke til kommentar
GeirGrusom Skrevet 3. mars 2007 Del Skrevet 3. mars 2007 (endret) Dim s As String = "ABC-ABC-ABC-ABC" Dim indices As List(Of Integer) = new List(Of Integer) Dim index As Integer Do index = s.IndexOf("B", index + 1) If index = -1 Then Exit Do indices.Add(index) Loop Endret 3. mars 2007 av GeirGrusom Lenke til kommentar
Manfred Skrevet 5. mars 2007 Del Skrevet 5. mars 2007 Ehm... InStr? Er det noen som har grodd fast i VB6 eller noe her? *grøss* Lenke til kommentar
wolf5 Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 (endret) [slettet. feil svar.] Endret 6. mars 2007 av wolf5 Lenke til kommentar
j000rn Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 Ehm... InStr? Er det noen som har grodd fast i VB6 eller noe her? *grøss* 8084275[/snapback] Nei, desverre er InStr en del av Microsoft.VisualBasic namespacet som er lagt til som referanse automatisk i nye VB.Net prosjekter... Lenke til kommentar
GeirGrusom Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 ...men disse er kun lagt til for å gjøre overgangen fra VB6 til VB.NET enklere. Lenke til kommentar
Wubbable Skrevet 6. mars 2007 Forfatter Del Skrevet 6. mars 2007 Har aldri brukt VB6, VB.NET er det eneste språket jeg har prøvd (untatt html og lignendes) Lenke til kommentar
j000rn Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 Har aldri brukt VB6, VB.NET er det eneste språket jeg har prøvd (untatt html og lignendes) 8091271[/snapback] Høyreklikk på prosjektet. Velg references. Fjern Microsoft.VisualBasic.*. Og lær deg å bruke .Net måten å gjøre ting på isteden. string.IndexOf(...) Lenke til kommentar
Manfred Skrevet 6. mars 2007 Del Skrevet 6. mars 2007 ...men disse er kun lagt til for å gjøre overgangen fra VB6 til VB.NET enklere. 8090884[/snapback] Ja, fysj... tenke seg til å måtte lære noe nytt og lete etter funksjoner. Da er det MYE bedre å dra med seg iltt gammelt graps Sånn for kosens skyld... Lenke til kommentar
GeirGrusom Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 Synes det er litt mer logisk at alle string operasjoner faktisk ligger i string klassen, framfor prosedyre basert som i VB6, litt enklere å finne de funskjonene du er ute etter. Lenke til kommentar
Moskus Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 ...men disse er kun lagt til for å gjøre overgangen fra VB6 til VB.NET enklere. 8090884[/snapback] Ja, fysj... tenke seg til å måtte lære noe nytt og lete etter funksjoner. Da er det MYE bedre å dra med seg iltt gammelt graps Sånn for kosens skyld... 8093272[/snapback] For oss som oppgraderer prosjekter for VB6 til .NET er det genialt for da slipper man å måtte om-programmere hvert eneste fordømte prosjekt fordi .NET mangler ett eller annet graps. På den annen side kan det hindre noen i å bruke .NET-ekvivalenten ettersom VB6 fremdeles fungerer. Eksempelvis burde .NET-oversetteren være smart nok med til å erstatte vbCrLv med ControlChars.NewLine eller tilsvarende... Det er alltid fornuftig å lære seg "den nye" måten å gjøre noe på. Lenke til kommentar
Wubbable Skrevet 9. mars 2007 Forfatter Del Skrevet 9. mars 2007 Yeye, men siden InStr fungerer, så bruker jeg den Lenke til kommentar
Moskus Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 (endret) Huff da! Yeye, men siden InStr fungerer, så bruker jeg den 8114369[/snapback] Det er alltid fornuftig å lære seg "den nye" måten å gjøre noe på. Hva gjør du i Visual Studio 2008? Kanskje de har fjernet den i .NET 4.0... Endret 9. mars 2007 av moskus Lenke til kommentar
Manfred Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 For oss som oppgraderer prosjekter for VB6 til .NET er det genialt for da slipper man å måtte om-programmere hvert eneste fordømte prosjekt fordi .NET mangler ett eller annet graps. 8113358[/snapback] Mangler? Ja, man kan sikkert se sånn på det også. Det blir nesten like smart som å si at C# mangler keywordet "Dim" og slikt. Huff da!Yeye, men siden InStr fungerer, så bruker jeg den 8114369[/snapback] Det er alltid fornuftig å lære seg "den nye" måten å gjøre noe på. Hva gjør du i Visual Studio 2008? Kanskje de har fjernet den i .NET 4.0... 8114624[/snapback] Viktig poeng. Det er viktigere å lære seg hvordan det egentlig skal være. Det fungerer å kalle funksjoner for å tegne vinduer fra win32-api'en også, men for 99.9999% av alle prosjeter vil dette være rent tull. Lenke til kommentar
Moskus Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 Mangler? Ja, man kan sikkert se sånn på det også. Det blir nesten like smart som å si at C# mangler keywordet "Dim" og slikt. 8115023[/snapback] Ja, endelig begynner du å forstå! Det tok litt tid, men den som venter på noe godt... Lenke til kommentar
GeirGrusom Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 Jeg synes de burde ta tilbake SET og LET, pluss linjenummerering! Og hvor ble det forresten av GOSUB? Return er jo til noe helt annet i Visual Basic.NET en det det var til i gode gamle Turbo Basic. Nei du, dette nymotens tullet. Gi meg Visual Basic 1.0 eller gi meg en iskrem. Lenke til kommentar
Wubbable Skrevet 9. mars 2007 Forfatter Del Skrevet 9. mars 2007 Er jo null vits i linjenummerering når debuggeren automatisk går til der det er feil.. Lenke til kommentar
GeirGrusom Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 (endret) Jeg tøyser. Dessuten var det ikke det linjenummerering var til. Til å begynne med, var det en simpel måte å kalle jump, eller populært goto. 10: PRINT "Hello World!" 20: GOTO 10 10: SIN 20: GOTO HELL (Futurama) Basic har vært fullt av sludder: - LET (dette tror jeg er gjort for å få BASIC til å ligne mer på Fortran) LET A = 20 - SET (Hva var poenget med dette? Du måtte bruke set hvis du brukte objekter) - Postfix datatype deklarering, %&$ - Linjenummerering - CALL - Hele Open saken: OPEN [FILENAME] FOR [MODE] ACCESS [ACCESS] AS #[NUMBER] - Arrays deklareres med (), samme som funksjonsparameter () - Arrays kan begynne med negative størrelser: Dim arr(-4 to 12) As String - Option Explicit er av som default (like irriterende som i Python når det kommer til debugging) Hva i helvete tenkte de når de laget dette? Heldigvis har de rettet på det meste, bortsett fra Microsoft.VisualBasic namespacet. Endret 9. mars 2007 av GeirGrusom Lenke til kommentar
j000rn Skrevet 9. mars 2007 Del Skrevet 9. mars 2007 - Arrays kan begynne med negative størrelser:Dim arr(-4 to 12) As String 8116041[/snapback] Man kan ikke ha et array med 0 elementer. Dim test as Integer(0) Så vil test ha 1 stk element... :-P Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå