[vb]nog een vraagje over regexp

Pagina: 1
Acties:

  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11
ok, ik heb nu (hoop dat ik m goed uit mn hoofd weet :))
code:
1
2
reg.pattern = "(http:\/\/)(.+?)(\n|\s)"
reg.replace(string, "<a href='$1$2'>$1$2</a>")

maar als ik dan een enter heb na de link neemt ie die mee in de link, en dat mag niet....(als t spatie is doet ie dat nl niet)

hebben jullie nog wat kennis hierover? :)

disjfa - disj·fa (meneer)
disjfa.nl


Verwijderd

\r\n
?

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

disjfa: Kan jij mij vertellen hoe je RegEx aan de praat heb gekregen binnen Visual Basic :?

Ik heb er ooit naar gekeken, maar wist niet hoe ik dit binnen VB aan de praat moest krijgen...

Verwijderd

volgens mij heeft hij het over php, niet over VB. RegEx is een registry functie, hij refereert naar expressie-evaluatie routines in php :)

  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11
Op woensdag 16 januari 2002 12:14 schreef rwoudsma het volgende:
disjfa: Kan jij mij vertellen hoe je RegEx aan de praat heb gekregen binnen Visual Basic :?

Ik heb er ooit naar gekeken, maar wist niet hoe ik dit binnen VB aan de praat moest krijgen...
reference --> microsoft vbscript regular expressions
(zorg wel dat je vbscript 5.5 hebt voor de zekerheid :))
:)

en php... hoe werkt dat :? :)

maar waarschijnlijk heb ik het fout gezien, want als ik die string kopieeer dan is die enter weg :? ik begrijp t ook nie meer

disjfa - disj·fa (meneer)
disjfa.nl


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

fladder heeft een goed punt
maak even van de regex:
code:
1
2
3
(http:\/\/)(.+?)(\n|\r|\s)
             \_/
              die even erbij

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

disjfa: reference --> microsoft vbscript regular expressions
Maar dat betekend dat je dus weer een .dll moet koppelen aan je VB applicatie. Dit zorgt er dus voor dat het programma groter en groter wordt...

Kan je dan niet beter een VB Function schrijven welke een Find and Replace doet binnen een string welke wordt meegegeven....
code:
1
2
3
4
5
6
7
8
9
Public Function FindReplace(InputString as String, FindWhat as String, ReplaceWith as String) as String

Dim strReturn As String

     Hier dan wat code wat de find replace doet....

FindReplace = strReturn

End Function

Of is dit een verkeerde interpretatie van het nut van de RegEx welke jij gebruikt :?

  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11
die dll staat automatisch op je computje....

en je kan idd een functie schrijven zoals jij nou net liet zien, maar bij mij is dat niet van toepassing :)

ik herschrijf gewoon een paar dingetjes die ik dan weer naar mn asppaginatje terugkoppel :) (via axtivex dll ;))

en dan komt alles mooi op mijn beelscherm :) en is iedereen weer blij :)

disjfa - disj·fa (meneer)
disjfa.nl


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

disjfa: die dll staat automatisch op je computje....
Nou, ik heb hier VB geïnstalleerd, maar kan deze DLL niet vinden als reference binnen VB...
en je kan idd een functie schrijven zoals jij nou net liet zien, maar bij mij is dat niet van toepassing :)
Wat is het nu dan van een RegEx, zie niet in wat daar nou een voordeel van is ten opzichte van een eigen geschreven functie... Of kan een RegEx veel meer :?

Zoals ik het nu zie, kan je met RegEx bepaalde gedeeltes uit een string laten vervangen, door gebruik te maken van bepaalde syntaxen!? Mocht dat niet zo zijn, hoor ik het graag...

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op woensdag 16 januari 2002 15:40 schreef rwoudsma het volgende:
Zoals ik het nu zie, kan je met RegEx bepaalde gedeeltes uit een string laten vervangen, door gebruik te maken van bepaalde syntaxen!? Mocht dat niet zo zijn, hoor ik het graag...
Oa, maar je kan ook die waardes teruggeven ipv replacen, controlleren of een string het juiste formaat heeft, en ongetwijfeld nog veel meer (maar dat is wat ik ermee gedaan heb).
Tuurlijk is dat ook allemaal wel zelf te schrijven, maar ja, waarom zelf het wiel uitvinden terwijl het al bestaat (en ook nog eens in verschillende omgevingen, met wat kleine aanpassing is de expressie zo over te nemen in bv php of perl).

Exact expert nodig?


  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11
Op woensdag 16 januari 2002 15:40 schreef rwoudsma het volgende:
Nou, ik heb hier VB geïnstalleerd, maar kan deze DLL niet vinden als reference binnen VB...
die is er echt, het lijkt mij toch wel dat je vbscript op je compu hebt staan :)
Wat is het nu dan van een RegEx, zie niet in wat daar nou een voordeel van is ten opzichte van een eigen geschreven functie... Of kan een RegEx veel meer :?

Zoals ik het nu zie, kan je met RegEx bepaalde gedeeltes uit een string laten vervangen, door gebruik te maken van bepaalde syntaxen!? Mocht dat niet zo zijn, hoor ik het graag...
eigen geschreven functie is regels en regels text... :)
regexp kun je snel en makkelijk (als je de syntax eenmaal kent) dingen vervangen, of omzetten naar andere strings.

zoals je hier ziet op got. zoals die quotes/code of die bold sub... etc dat is dan 2 regels text om om te zetten naar wat er hier staat in de html code. makkelijk dus :)

disjfa - disj·fa (meneer)
disjfa.nl


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op woensdag 16 januari 2002 15:56 schreef disjfa het volgende:
zoals je hier ziet op got. zoals die quotes/code of die bold sub... etc dat is dan 2 regels text om om te zetten naar wat er hier staat in de html code. makkelijk dus :)
Da's weer niet helemaal een goed argument :) Die regexpressie handler-dingus bevat ook regels code, alleen zie jij die niet ;)
En m'n eigen [b] naaqr <b> replacer roep ik in uh 3 regels aan...
Oh nee 4 :)

Dim obj
Set obj = CreateObject(...)
sNewVal = obj.Replace(...)
Set obj = Nothing

Exact expert nodig?


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Op woensdag 16 januari 2002 16:00 schreef CrazyD_at_work het volgende:

[..]

Da's weer niet helemaal een goed argument :) Die regexpressie handler-dingus bevat ook regels code, alleen zie jij die niet ;)
En m'n eigen [b] naaqr <b> replacer roep ik in uh 3 regels aan...
Oh nee 4 :)

Dim obj
Set obj = CreateObject(...)
sNewVal = obj.Replace(...)
Set obj = Nothing
Even een vraagje!? is dat obj een RegEx object of gewoon een ander object???

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op woensdag 16 januari 2002 16:36 schreef rwoudsma het volgende:
Even een vraagje!? is dat obj een RegEx object of gewoon een ander object???
Nee da's een eigen object. Ik wou (wilde) eerst [b] en zo replacen met een regexpressie, maar het ging een beetje mis als de tag opengelaten werd, en ik kwam nog wat andere dingen tegen, en omdat ik geen zin had om langer te denken en te zoeken heb ik maar m'n "niet zo efficiente maar wel goed werkende" replacer gebouwt en in een dll gestopt (samen met nog wat andere helperfuncties).
Met een regexpressie is het trouwens niet veel meer regels hoor.
't Ging me er eigenlijk vooral om om aan te geven dat een object gebruiken soms wel makkelijk is (dat wiel wat al rond is....), maar dat ook die functies uiteraard uit code bestaan, en dat dat dus gewoon geen excuus is om daarom maar een object te gebruiken i.p.v. eigen code...

Exact expert nodig?


  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Op woensdag 16 januari 2002 16:41 schreef CrazyD_at_work het volgende:

[..]

Nee da's een eigen object. Ik wou (wilde) eerst [b] en zo replacen met een regexpressie, maar het ging een beetje mis als de tag opengelaten werd, en ik kwam nog wat andere dingen tegen, en omdat ik geen zin had om langer te denken en te zoeken heb ik maar m'n "niet zo efficiente maar wel goed werkende" replacer gebouwt en in een dll gestopt (samen met nog wat andere helperfuncties).
Met een regexpressie is het trouwens niet veel meer regels hoor.
't Ging me er eigenlijk vooral om om aan te geven dat een object gebruiken soms wel makkelijk is (dat wiel wat al rond is....), maar dat ook die functies uiteraard uit code bestaan, en dat dat dus gewoon geen excuus is om daarom maar een object te gebruiken i.p.v. eigen code...
Verrek zeg dat is natuurlijk ook altijd handig om daar een DLL voor te maken... Ik los het meestal op door gebruik te maken van (class) modules...

Daar gooi ik dan mijn vaak gebruikte functies in en zo...

  • disjfa
  • Registratie: April 2001
  • Laatst online: 12-05 15:11
Op woensdag 16 januari 2002 16:41 schreef CrazyD_at_work het volgende:

[..]

Nee da's een eigen object. Ik wou (wilde) eerst [b] en zo replacen met een regexpressie, maar het ging een beetje mis als de tag opengelaten werd
idd dat probleem had ik ook :) maar nu ik die regexp heb doorgekeken heb ik een uiterst makkelijke string ervan gemaakt :) en zijn al mn problemen opgelost :D

disjfa - disj·fa (meneer)
disjfa.nl


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op woensdag 16 januari 2002 18:11 schreef rwoudsma het volgende:
Verrek zeg dat is natuurlijk ook altijd handig om daar een DLL voor te maken... Ik los het meestal op door gebruik te maken van (class) modules...
Dat doe ik soms ook, afhankelijk van wat het is en zo. Ik heb vaak ook wel een modGeneralFunctions.bas met een paar handige functies die ik vrijwel altijd nodig heb.
Maar dat vind ik (o.a.) juist de kracht van dll's, dingen die je in zo'n beetje ieder programma gebruikt, zeker als er meerdere programma's bij de klant draaien, vind ik een dll erg handig daarvoor :)
Op woensdag 16 januari 2002 18:30 schreef disjfa het volgende:
idd dat probleem had ik ook :) maar nu ik die regexp heb doorgekeken heb ik een uiterst makkelijke string ervan gemaakt :) en zijn al mn problemen opgelost :D
Posten :)

Ik kreeg die expressie toen niet goed, bleef mis gaan als tags niet werden afgesloten, of genestte tags (quote binnen quote, wat ik wel wilde) gingen toch niet goed.

Exact expert nodig?

Pagina: 1