Toon posts:

[VB] weg met rare leestekens,

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik wil in vb een progje maken dat een E-mail moet opslaan in een tekst bestand, en nu wil ik dat tekst bestand de naam geven van de Subject regel van deze E-mail. Helaas komt het voor dat bepaalde mensen leestekens gebruiken in een e mail zoals .,/?:;'":r enz.... En dat kan natuurlijk niet in een bestandsnaam is het mogelijk deze er uit te filteren ? en hoe zou ik dat voor elkaar moetten krijgen ?

objitem.SaveAs database & "\" & cmbUitvoer & "\" & but & "\" & Left(objitem.Subject, 5) & ".msg", olMSG

thanx

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 23:21

mulder

ik spuug op het trottoir

Tekens door "" vervangen met Replace

oogjes open, snaveltjes dicht


Verwijderd

Daar schrijf je toch gewoon een functie voor, die de tekens die niet in de gewenste ascii-range liggen, eruit filtert?

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

leestekens gebruiken in een e mail zoals .,/?:;'":r
r ? ehhh.. lastig als ik mail naar mezelf wil sturen.. zit namelijk een r in mijn domein naam. Bovendien zit in mijn domein naam ook nog eens een punt. daarnaast is een punt een volledig geldige karakter voor in een email adres. bijvoorbeeld : E.Putjesschepper@ikwileenbaan.nl :+

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Verwijderd

code:
1
2
3
4
5
6
Dim regEx
Set regEx = New RegExp      
regEx.Pattern = "[^a-z0-9 _]"
regEx.IgnoreCase = True
strSubject = regEx.Replace(strSubject, "")
Set regEx = Nothing

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 23:21

mulder

ik spuug op het trottoir

Op woensdag 12 december 2001 12:01 schreef Doekman het volgende:
code:
1
2
3
4
5
6
Dim regEx
Set regEx = New RegExp      
regEx.Pattern = "[^a-z0-9 _]"
regEx.IgnoreCase = True
strSubject = regEx.Replace(strSubject, "")
Set regEx = Nothing
Tja, RegExp, dat zal wel een class zijn ofzo? Geen standaard VB iniedergeval, dus daar heb je weinig aan.

oogjes open, snaveltjes dicht


Verwijderd

VB :? ow da's weer even geleden. Speel beetje met onderstaande code, dan kom je er wel uit denk ik.
code:
1
2
3
4
5
6
7
8
9
10
Dim blaaat as String ' pleur hier je string in
Dim sResult as String
Dim sReplace as variant
Dim x as integer
sReplace = new Array ( ";", ".", ... ) ' hier alle tekens die eruit moeten
sResult = blaaat

For x = lbound( sReplace ) to ubound( sReplace )
  sResult = Replace( sResult, sReplace(x), "" );
Next

Verwijderd

Op woensdag 12 december 2001 13:29 schreef El_Mundo het volgende:

[..]

Tja, RegExp, dat zal wel een class zijn ofzo? Geen standaard VB iniedergeval, dus daar heb je weinig aan.
Tsja El_Mundo, je loopt hopeloos achter (no offence). Sinds IE5 en/of Win2000 (IIS5) zit het standaard in VBScript. En omdat er COM is, dus ook in VB (en Delphi als je wilt).

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 23:21

mulder

ik spuug op het trottoir

Het is dus geen standaard VB. VBScript <> VB. En ik denk dat meer programmeurs het ermee eens zijn dat je voor dergelijke functie niet direct een COM object gaat gebruiken, zeker als je dit zelf in code kan doen.

Dat ik hopeloos achter loop kan kloppen, ben er een paar maanden uit. Maar gelukkig heb ik per januari weer een nieuwe baan als programmeur!!! Wahoooo!!!

oogjes open, snaveltjes dicht


Verwijderd

Op woensdag 12 december 2001 22:18 schreef El_Mundo het bovenstaande
Dat is op zich een punt: Tot nu toe hoort de library bij een taal. Gelukkig is dat met .NET allemaal voorbij :P. C# hééft niet eens een eigen lib gedefinieerd!

Kun je in C++ dezelfde regex gebruiken als in PHP.NET :? of in C#. Of nog beter, je schrijft je regex'en in een daartoe beter toegeruste taal 8-)

Enne, suc6 met je nieuwe baan.
Pagina: 1