[C#] Regular Expressions

Pagina: 1
Acties:

  • xentar
  • Registratie: Februari 2003
  • Laatst online: 18-09-2025
Ik zou graag een onderdeel van mijn programma versnellen en vroeg me af of het volgende mogelijk is met het gebruik van regular expressions.

Ik heb dus het volgende als gegeven:
  • (string body): Een hoop woorden gescheiden door spaties en enkel bestaande uit [a-z0-9]
  • (string words): Minstens 2 woorden. Deze moeten gevonden worden in die hoop woorden
  • (int maxwords): Het maximum aantal woorden waarin alle words gevonden moeten zijn
bv:
  • (string body): jan piet fons hans tom marc
  • (string words): tom piet
  • (int maxwords): 2
  • Result => geen match
  • (string body): jan piet fons hans tom marc
  • (string words): tom piet
  • (int maxwords): 4
  • Result => match
De volgorde van de words is niet van belang. Enkel dat ze binnen de maxwords van elkaar moeten liggen


Nu werk ik met dataviews en datatables etc.
Iets wat veel te omslachtig is en veel te veel processorkracht verbruikt.

Daarom probeer ik het nu met regular expressions op te lossen, maar het vlot niet echt.

Ik vraag me eerst af of het uberhaupt mogelijk is om dit op te lossen mbv regex.
Iemand ervaring hiermee?

http://www.zelan.be


  • Michali
  • Registratie: Juli 2002
  • Laatst online: 22-03 18:12
Ik snap je voorbeeldje niet echt eigenlijk. Is maxwords nu echt het maximum aantal woorden waarin de words gematched mogen worden? Je 2de voorbeeld heeft namelijk als maxwords 4 maar het zijn toch echt 5 woorden die ik tel voordat zowel tom als piet zijn langsgekomen. Hoe zit dat precies? Ik vind het een beetje vaag namelijk.
Enkel dat ze binnen de maxwords van elkaar moeten liggen
Even overheen gelezen.

[ Voor 15% gewijzigd door Michali op 06-04-2005 15:50 ]

Noushka's Magnificent Dream | Unity


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Michali schreef op woensdag 06 april 2005 @ 15:47:
Ik snap je voorbeeldje niet echt eigenlijk. Is maxwords nu echt het maximum aantal woorden waarin de words gematched mogen worden? Je 2de voorbeeld heeft namelijk als maxwords 4 maar het zijn toch echt 5 woorden die ik tel voordat zowel tom als piet zijn langsgekomen. Hoe zit dat precies? Ik vind het een beetje vaag namelijk.
Die twee namen komen binnen een scope van 4 woorden voor. Oftewel, tussen woord1 en woord2 mogen maximaal maxwords - 2 woorden zitten ;)
Edit -> Damn, nou moet ik ook gaan lopen doorstrepen! Doe ik lekker niet :P

Ik denk dat dit net ietsje te ver gaat voor een regular expression, maar ik ben geen regexp deskundige...

[ Voor 6% gewijzigd door OZ-Gump op 06-04-2005 15:52 ]

My personal website


  • xentar
  • Registratie: Februari 2003
  • Laatst online: 18-09-2025
OZ-Gump schreef op woensdag 06 april 2005 @ 15:51:
[...]

Die twee namen komen binnen een scope van 4 woorden voor. Oftewel, tussen woord1 en woord2 mogen maximaal maxwords - 2 woorden zitten ;)
Mooi verwoord :)
Sorry voor de wat "wazige" uitleg...

Ik twijfel ook of het mogelijk is. Het zou heel mooi zijn moest het gaan, maar heb al wat zitten testen met die word boundaries e.d. maar krijg niet het goede resultaat.

http://www.zelan.be


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

xentar schreef op woensdag 06 april 2005 @ 15:59:Ik twijfel ook of het mogelijk is. Het zou heel mooi zijn moest het gaan, maar heb al wat zitten testen met die word boundaries e.d. maar krijg niet het goede resultaat.
Volgens mij ga je vooral problemen hebben met het feit dat de te vinden woorden in een willekeurige volgorde gevonden mogen worden...

[ Voor 3% gewijzigd door OZ-Gump op 06-04-2005 16:05 ]

My personal website