Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


söka i text strängar

Postades av 2008-09-22 09:56:45 - Robbin Westerlund, i forum c++, Tråden har 6 Kommentarer och lästs av 1636 personer

hur gör man för att enklast söka i text strängar?

lär jag söka igenom bokstav för bokstav

när string1[i] stämmer med string2[i] kolla om nästa bokstav efter också stämmer, om inte fortsätt med nästa bokstav i string1


Svara

Sv: söka i text strängar

Postades av 2008-09-22 10:15:33 - Niklas Jansson

Du får nog beskriva lite tydligare vad du vill göra. Vill du bara jämföra dem?
Använder du std::string skriver du då bara
s1 == s2, s1<s2 etc.
Använder du inte std::string, varför? I 99% av fallen bör du isf byta till det.

Ska du loopa igenom för att hitta något är det i första hand "gamla stl", ev. med boost, som du ska titta på. I sista hand en handskriven loop.


Svara

Sv:söka i text strängar

Postades av 2008-09-22 11:48:37 - Robbin Westerlund

gammal stl

jag ska inte jämföra dem, jag vill kolla om tex ett ord finns i en mening och inte använda några utomstående bibliotek. Det vill säga en handskriven loop :)


Svara

Sv: söka i text strängar

Postades av 2008-09-22 15:47:21 - Tomas Granlund

Finns en bunt olika algoritmer med lite olika egenskaper, men KNP är väl rätt fin:
www-igm.univ-mlv.fr/~lecroq/string/node8.html


Svara

Sv: söka i text strängar

Postades av 2008-09-22 15:52:22 - Niklas Jansson

Är det för att lära dig, för att du läser en kurs där du är tillsagd att göra så, eller av någon annan anledning?

I allmänhet är det ändå "stl" du bör använda. Se http://www.cplusplus.com/reference/string/string/find.html, för ditt specifika exempel.

Alternativ 2, lite krångligare, är att använda std::transform och liknande. Då får du antingen lägga in extra klasser som gör jobbet, eller lägga in boost, och köra med lambdafunktioner. (Är mycket enklare än vad det låter).

Alternativ 3, ytterligare lite sämre, är att köra med iteratorer.

Typ:
<code>
std::string s1;

...
for(std::string::iterator i = s1.begin(); i != s1.end(); ++i)
std::cout << *i;

</code>

Alternativ 4, allra sämst, är att köra med index eller at:
<code>
std::string s1;

for(size_t i = 0; i < s1.length(); ++i){
std::cout << s1[i];
std::cout << s1.at(i);
}
</code>

använd i allmänhet at, eftersom den kollar så att du inte går utanför strängen.


Svara

Sv:söka i text strängar

Postades av 2008-09-25 13:27:57 - Robbin Westerlund

yes yes...

hur gör jag om jag vill spara ner ord i en vektor då? får det inte att funka med char eftersom den bara tar ett tecken och jag kan ju inte direkt göra en vektor av en string?


Svara

Sv: söka i text strängar

Postades av 2008-09-25 14:28:28 - Niklas Jansson

Vad menar du med "spara ner ord i en vektor"?
Du har flera ord, och varje ord ska få en plats i en vektor?

Då gör du precis det, en vektor av en string;

std::vector<std::string> v;
v.push_back("ABC")
v.push_back("DEF")
v.push_back("GHI")


Svara

Nyligen

  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов
  • 00:01 DL Van Tuning | Exclusive Body Kit
  • 12:08 Indian casino
  • 04:14 Vad finns det för kratomalternativ
  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 869
27 965
271 770
503
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies