/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Forkorte String
Fra : Tim Sørensen


Dato : 12-02-03 10:30

Lad os antage at jeg har denne String:
"hsghsgdfksdgsd Dette skal bruges flkgdfgfd"

Den tekst der står før og efter "Dette skal bruges" kender jeg ikke.
Hvordan kan jeg formattere den så der kun er "Dette skal bruges" tilbage?

--
Mvh.... Tim Sørensen
http://www.dondata.dk/



 
 
Tomas Christiansen (12-02-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 12-02-03 11:44

Tim Sørensen skrev:
> Lad os antage at jeg har denne String:
> "hsghsgdfksdgsd Dette skal bruges flkgdfgfd"
>
> Den tekst der står før og efter "Dette skal bruges" kender jeg ikke.
> Hvordan kan jeg formattere den så der kun er "Dette skal bruges"
tilbage?

Jeg forstår ikke helt spørgsmålet.
Hvis du allerede kender hele strengen "Dette skal bruges", hvorfor så
ikke blot bruge denne streng og glemme alt om "hsghsgdfksdgsd Dette skal
bruges flkgdfgfd"?

Hvis du vil søge efter noget kendt, kan du søge med InStr og InStrRev.
Derefter kan du bruge Left, Mid og Right til at pille det ud som ønsker
at bruge/ikke bruge.

-------
Tomas


Tim Sørensen (12-02-2003)
Kommentar
Fra : Tim Sørensen


Dato : 12-02-03 13:56

"Tomas Christiansen" <toc-nospam-01@blikroer.dk> wrote
> Jeg forstår ikke helt spørgsmålet.
> Hvis du allerede kender hele strengen "Dette skal bruges", hvorfor så
> ikke blot bruge denne streng og glemme alt om "hsghsgdfksdgsd Dette skal
> bruges flkgdfgfd"?

Nemlig.
Men problemet er at "Dette skal bruges" ligesågodt kan være "Dette skal også
bruges"

Det som jeg gerne vil,er at flerne alt det der står uden om "Dette" og
"Bruges"

--
Mvh.... Tim Sørensen
http://www.dondata.dk/



Tomas Christiansen (12-02-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 12-02-03 16:30

Tim Sørensen skrev:
> Det som jeg gerne vil,er at flerne alt det der står uden om "Dette"
og
> "Bruges"

Dvs. noget i retning af:

Dim sTekstInd As String, sTekstUd As String
Dim sStart As String, lStart As Long
Dim sSlut As String, lSlut As Long
sTekstInd = "deifiu Dette euh bruges ipj"
sStart = "dette"
sSlut = "bruges"
lStart = InStr(1, sTekstInd, sStart, vbTextCompare)
lSlut = InStrRev(sTekstInd, sSlut, -1, vbTextCompare)
sTekstUd = Mid(sTekstInd, lStart, lSlut - lStart + Len(sSlut))
Debug.Print ">" & sTekstUd & "<"

-------
Tomas


Tim Sørensen (13-02-2003)
Kommentar
Fra : Tim Sørensen


Dato : 13-02-03 09:08

"Tomas Christiansen" <toc-nospam-01@blikroer.dk> wrote
> Dvs. noget i retning af:
>
> Dim sTekstInd As String, sTekstUd As String
> Dim sStart As String, lStart As Long
> Dim sSlut As String, lSlut As Long
> sTekstInd = "deifiu Dette euh bruges ipj"
> sStart = "dette"
> sSlut = "bruges"
> lStart = InStr(1, sTekstInd, sStart, vbTextCompare)
> lSlut = InStrRev(sTekstInd, sSlut, -1, vbTextCompare)
> sTekstUd = Mid(sTekstInd, lStart, lSlut - lStart + Len(sSlut))
> Debug.Print ">" & sTekstUd & "<"

Ja lige præcis!
Genial kode

--
Mvh.... Tim Sørensen
http://www.dondata.dk/



Birk (19-02-2003)
Kommentar
Fra : Birk


Dato : 19-02-03 21:32

Hvis det skulle blive mere kompliceret, ville det være smart at bruge
regular expression i stedet .. men selvf. så skulle der jo helst være
lidt systematik over det


Tim Sørensen (20-02-2003)
Kommentar
Fra : Tim Sørensen


Dato : 20-02-03 09:24

"Birk" <-REMOVE-birk@rock-zone.dk> wrote
> Hvis det skulle blive mere kompliceret, ville det være smart at bruge
> regular expression i stedet .. men selvf. så skulle der jo helst være
> lidt systematik over det

Jeg ved godt at regular expressions er meget
hurtige, men jeg kan sgu ikke finde ud af at bruge dem :(

Hvis du kunne lave et lille eksempel ville det være cool

--
Mvh.... Tim Sørensen
56º 24'209 N / 10º 55'631 E



Birk (20-02-2003)
Kommentar
Fra : Birk


Dato : 20-02-03 11:58

De er skam ikke hurtigere, eller jo det er de måske, men jeg testede dem
mod en hjemmelavet "instr" kode, og instr koden var hurtigere.

Jeg brugte den her side, til at læse lidt om regex:
http://www.cs.utah.edu/dept/old/texinfo/regex/regex_toc.html

Og så studerede jeg Psychostats (et stats program til Counter-Strike),
som er skrevet i Perl, så det var lidt svært at finde ud af i starten,
da jeg aldrig har brugt perl. Men så prøvede jeg mig ellers bare frem
der efter, hvis du vælger at studere Psychostats, burde du også få
fingerne i en Counter-Strike log fil, prøv at spørg på et counter-strike
forum, om der ikke er nogen der vil sende dig en Server Log.


Det tog mig en del tid, da jeg som sagt ikke kendte til Perl, men hvis
du kan finde en source code i VB der arbejder med regex, ville det
hjælpe meget.


- Birk


Tim Sørensen (20-02-2003)
Kommentar
Fra : Tim Sørensen


Dato : 20-02-03 14:24

"Birk" <-REMOVE-birk@rock-zone.dk> wrote
> Jeg brugte den her side, til at læse lidt om regex:
> http://www.cs.utah.edu/dept/old/texinfo/regex/regex_toc.html
> Det tog mig en del tid, da jeg som sagt ikke kendte til Perl, men hvis

Det gør jeg slet heller ikke

> du kan finde en source code i VB der arbejder med regex, ville det
> hjælpe meget.

http://makeashorterlink.com/?U32162983

--
Mvh.... Tim Sørensen
56º 24'209 N / 10º 55'631 E



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste