realbasic-nug.de
[Top] [All Lists]

Re: Stringsuche

To: REALbasic NUG German <realbasic-nug dot de at lists dot realsoftware dot com>
Subject: Re: Stringsuche
From: Stefan Mettenbrink <S dot Metti at gmx dot de>
Date: Wed, 27 Sep 2006 21:36:19 +0200
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot de at lists dot realsoftware dot com
References: <3242235604 dot 129990020387 at [192 dot 168 dot 178 dot 135]> <A905CFFC-07FE-425E-B801-3081ED52D4FA at sailer-online dot de>
Claudius Sailer wrote:

Der Code ist nicht gut....

Ende = Ubound(Zeilen)

for i=Ende DownTo 0
if InStr(Zeilen(i),EditField1.Text)>0 then s.Append Zeilen(i)
next

das sollte gehörig was bringen...

Meinst Du?
Ich habe extra die DownTo-Variante gewählt, weil nur einmal (intern)
UBound errechnet werden muss, danach muss RB sich ohnehin merken,
welchen Wert der Schleifenzähler hat.

Ob das permanente Auslesen aus dem Editfield gut ist oder lieber eine
variable verwendet werden sollte, müsste getestete werden.

Ich habe mal getestet:

for i=UBound(Zeilen) DownTo 0 => 3627 Ticks

bis=UBound(Zeilen)
for i=0 to bis => 3799 Ticks

s1=EditField1.text
for i=UBound(Zeilen) DownTo 0 => 79

s1=EditField1.text
bis=UBound(Zeilen)
for i=0 to bis => 78 Ticks

s1=EditField1.text
for i=0 to UBound(Zeilen) => 267 Ticks

Das Ausschlaggebende war, den Text aus dem Editfield in eine lokale
Variable zu überführen. Danke für den Tipp.

MfG, Metti.


From  Wed 27 Sep 2006 21:38:56 +0200
Return-Path: <realbasic-nug dot de-bounces at lists dot realsoftware dot com>
X-Original-To: listarchive at realsoftware dot com
Delivered-To: listarchive at realsoftware dot com
Received: by xmail.realsoftware.com (Postfix, from userid 1037)
        id 12A3EC83C74; Wed, 27 Sep 2006 12:39:04 -0700 (PDT)
X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on realxserve.local
X-Spam-Level:
X-Spam-Status: No, score=-1.2 required=4.5 tests=AWL autolearn=disabled
        version=3.1.1
Received: from lists.realsoftware.com (lists.realsoftware.com [209.198.132.125])
        by xmail.realsoftware.com (Postfix) with ESMTP id 89454C83C6D;
        Wed, 27 Sep 2006 12:39:02 -0700 (PDT)
Received: from lists.realsoftware.com (localhost [127.0.0.1])
        by lists.realsoftware.com (Postfix) with ESMTP
        id 7DFC1152D879; Wed, 27 Sep 2006 14:39:01 -0500 (CDT)
X-Original-To: realbasic-nug dot de at lists dot realsoftware dot com
Delivered-To: realbasic-nug dot de at lists dot realsoftware dot com
Received: from smtprelay03.ispgateway.de (smtprelay03.ispgateway.de
        [80.67.18.15])
        by lists.realsoftware.com (Postfix) with ESMTP id 66E3A152D86D
        for <realbasic-nug dot de at lists dot realsoftware dot com>;
        Wed, 27 Sep 2006 14:38:58 -0500 (CDT)
Received: (qmail 15955 invoked from network); 27 Sep 2006 19:38:57 -0000
Received: from unknown (HELO [192.168.1.80]) (363246 at [84 dot 175 dot 98 dot 
32])
        (envelope-sender <support at monkeybreadsoftware dot de>)
        by smtprelay03.ispgateway.de (qmail-ldap-1.03) with SMTP
        for <realbasic-nug dot de at lists dot realsoftware dot com>;
        27 Sep 2006 19:38:57 -0000
To: realbasic-nug dot de at lists dot realsoftware dot com (REALbasic NUG 
German)
In-Reply-To: <3242235604 dot 129990020387 at [192 dot 168 dot 178 dot 135]>
From: support at monkeybreadsoftware dot de (Christian Schmitz)
Date: Wed, 27 Sep 2006 21:38:56 +0200
Message-ID: <1hmcerd dot 1jiq90t1jum5ogM%support at monkeybreadsoftware dot de>
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Organization: Monkeybread Software Germany
X-Face: nrf3>{WQ6c&r+7 at e)"]0G60`-6ND^)I2mI%>)QGYa=9"=7jhd-g2|b3!>Al0+
        Ccb%xGQshhi|g at QU2$
User-Agent: MacSOUP/D-2.7 (Mac OS X version 10.4.7)
Subject: Re: Stringsuche
X-BeenThere: realbasic-nug dot de at lists dot realsoftware dot com
X-Mailman-Version: 2.1.2
Precedence: list
Reply-To: REALbasic NUG German <realbasic-nug dot de at lists dot realsoftware dot 
com>
Sender: realbasic-nug dot de-bounces at lists dot realsoftware dot com
Errors-To: realbasic-nug dot de-bounces at lists dot realsoftware dot com

Stefan Mettenbrink <S dot Metti at gmx dot de> wrote:

Ich habe ein Stringarray (gut 200.000 Strings) und ein Editfield mit dem
Suchtext.

Man könnte versuchsweise eine parallele Suche aller Strings machen.
Dafür Regex nehmen und einen großen regulrären Ausdruck damit
kompilieren.

PS: Meine RegEx Klasse hab ich gemacht, weil sie schneller ist als die
von RB :-)

Gruß
Christian

--
Around eleven thousand functions in one REALbasic plug-in. The Monkeybread Software Realbasic Plugin v6.3. Now universal!
<http://www.monkeybreadsoftware.de/realbasic/plugins.shtml>


<Prev in Thread] Current Thread [Next in Thread>