Article View: be.comp.programming
Article #12577Re: [vb] Wat doe de functie Instr en Replace?
From: Zoeloelip
Date: Thu, 25 Oct 2001 20:13
Date: Thu, 25 Oct 2001 20:13
68 lines
3543 bytes
3543 bytes
> Ik vroeg me af wat in visual basic de functie doet Instr en Replace. > Ik wil het volgende toepassen: > ik heb hier een string waarin een complete mail zit, met headers en al. > Ik zou daar graag de lijn "subject: het subject" uithalen. > Die lijn begint altijd met 'subject', maar hetgeen achter de dubbele punt > staat, wil ik in een variabele krijgen. > Kan iemand me vlug een voorbeeldje geven/en ev. kort uitleggen hoe die > functie werkt.? > Ik heb gehoord dat dat te doen is met de functie instr en/of Replace. Instr zou je volledig kunnen schrijven als "zoek in string(variable)". Het eerste attribut is "start" hier geef je de het startpunt van in de string waar de functie moet beginnen te zoeken. Het tweede attribut is "string1" hier geef je de string waar in gezocht moet worden. Het derde attribut is "string2" hier geef je string waar de functie naar moet zoeken in string1. Ik zal een voorbeeldje geven hoe denk dat het beste zal gaan. Dim strMail as string 'Plaats hier in de mailbody Dim strSubject as string 'Hier komt het onderwerp in Dim intWhere as integer 'Waar begint het subject 'Waar begint subject? intWhere = Instr(1, strMail, "subject:") 'Ik weet niet wat juist achter het subject komt om te zien waar die eindigt maar ik gok dat het is gaat zijn als een linefeed dus ga ik vbCrLf gebruiken, een constante in vb die hetzelfde is als chr(10)+chr(13) strSubject = Mid(strMail, intWhere) 'Hier knip ik alles voor subject weg en plaats het in strSubject 'Waar eindigd subject intWhere = instr(1, strSubject, vbCrLf) 'Vervang vbCrLf door het juiste teken, kan je wel ergens op internet vinden 'Alleen nog het subject strSubject = mid(strSubject, intWhere) 'strSubject bevat nu de string "subject: ....." Ik denk dat dit is wat je nodig hebt. Er staat nog wel subject voor maar ik denk dat je die wel kan wegknipen. Als het niet lukt, laat dan iets weten. Replace dient om een string te zoeken in een andere string en als die gevonden is wordt die vervangen door een opgegeven string. vb: Dim strOud as string Dim strOmTeVinden as string Dim strOmTeVervangen as string Dim strNieuw as string strOud = "*Hallo hoe is het ermee!*" strOmTeVinden = "*" strOmTeVervangen = "@" strNieuw = Replace(strOud, strOmTeVinden, strOmTeVervangen) Output zou dan zijn: "@Hallo hoe is het ermee@" -- Mvg. Zoeloelip PUB - De Telenet-Internet gebruikersvereniging - http://pub.telenet.be
Technical Details
Message-ID:
<jn_B7.1536$aA1.265@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!isdnet!newsgate.cistron.nl!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<4sXB7.237$PR.28998755@hestia.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,4edd4c06c6b48422 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2001-10-25 13:13:04 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!isdnet!newsgate.cistron.nl!newsfeeds.belnet.be!news.belnet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail From: "Zoeloelip" <bartvb@pandora.be> Newsgroups: be.comp.programming References: <4sXB7.237$PR.28998755@hestia.telenet-ops.be> Subject: Re: [vb] Wat doe de functie Instr en Replace? Lines: 70 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: <jn_B7.1536$aA1.265@afrodite.telenet-ops.be> Date: Thu, 25 Oct 2001 20:13:03 GMT NNTP-Posting-Host: 213.224.217.145 X-Complaints-To: abuse@pandora.be X-Trace: afrodite.telenet-ops.be 1004040783 213.224.217.145 (Thu, 25 Oct 2001 22:13:03 MET DST) NNTP-Posting-Date: Thu, 25 Oct 2001 22:13:03 MET DST Organization: Telenet Internet