Hallo, Roland M. Kruggel wrote: > <code> > function aubb_anschrift_delete(_rowid, _para1) > define _rowid int, > _para1 char(10) > define rid int, > txt char(20), > txt_2 char(1) > > let rid = _rowid > let txt = "text ",_para1 > let txt_2 = "" > </code> > > Folgedes soll gemacht werden. > Parameter fangen alle (bei mir zu mindestens) mit einem Unterstrich > an. Diese sollen markiert werden. Die Variablen die in der Mitte > einen Unterstrich habe sollen nicht markiert werden, es sei denn sie > haben am Anfang auch einen Unterstrich. Vor der Parametervariablen > können steht eins von den folgenden Zeichen: > ,=( <space> <tab> <oder nichts> > > Die Parametervariable endet mit einem der folgenden Zeichen > , <space> <tab> <zeilenende> > Ich habe folgenden regexp definiert > \s*[,=(\t ]_[a-z_]*
Da hast du die whitespaces vorher dabei. Ich würde stattdessen ein \b (word boundary nehmen): \b_[a-zA-Z0-9_]+ Wobei ich jetzt nicht weiß, welche Buchstaben alle in so einem Ding drin sein dürfen. Eine andere Möglichkeit wären non-greedy Ausdrücke: \b_.*?\b oder so. Viel Spass beim Experimentieren, Moritz > Es werden alle Parametervariablen markiert, außer die '_rowid' im > Funktionskopf. Ausserdem wird das Zeichen vor dem _ auch markiert. > [,=(\t ] Das soll nicht sein. > > Kann jemand helfen? > -- Moritz Lenz http://moritz.faui2k3.org/
signature.asc
Description: OpenPGP digital signature