Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[slrn] SCORE_FAQ verbessern?

7 views
Skip to first unread message

Thorsten Gunkel

unread,
Oct 30, 2001, 3:37:00 PM10/30/01
to
Hi *,
mit slrn wird ja eine Datei SCORE_FAQ mitgeliefert. In Punkt 3 heißt
es:
,----
| How do I assign a score to a specific subject, e.g., ``test'' messages?
|
| Score: -9999
| Subject: test
`----

Das wirft aber auch Postings raus die im Betreff irgendwo das Teilwort
test haben, oder? Ich würde mindestens \<test\> oder vielleicht
besser ^test$ vorschlagen. Ich persönlich nutzte ^[tT][eE][sS][tT]$ (hat
mir mal jemand empfohlen) ein \C davor müsste es aber auch tun.
Hängt es eigentlich von der verwendeten slang Version ab ob \c oder \C
default ist? Kann man die erstellen Regeln eigentlich irgendwie testen?

Vielleicht könnte man die FAQ noch um ein paar nützliche Regeln
ergänzen? Ich kenne z.B. noch
Subject: .* \d+$
und
~From: [ ]+[^ ]+[ ]+

Lässt sich sicher aber leicht toppen.

Mfg
Thorsten
--
> Ein vernünftig installiertes NT-System mit NTFS lässt sich auch nicht
> durch unbedarfte DAU-Aktionen kaputtmachen (...)
Stimmt. Da müssen Profis her. Ich habe etwa eine halbe Stunde gebraucht,
dann war es kaputt. Stefan Ring & Robin S. Socha

Matthias Friedrich

unread,
Oct 30, 2001, 4:39:26 PM10/30/01
to
Thorsten Gunkel <tgu...@gmx.de> wrote:
> mit slrn wird ja eine Datei SCORE_FAQ mitgeliefert. In Punkt 3 heißt
> es:
> ,----
>| How do I assign a score to a specific subject, e.g., ``test'' messages?
>|
>| Score: -9999
>| Subject: test
> `----

> Das wirft aber auch Postings raus die im Betreff irgendwo das Teilwort
> test haben, oder? Ich würde mindestens \<test\> oder vielleicht
> besser ^test$ vorschlagen. Ich persönlich nutzte ^[tT][eE][sS][tT]$ (hat
> mir mal jemand empfohlen) ein \C davor müsste es aber auch tun.

Ja, ist natürlich besser. Schreib' doch das und Deine anderen
Vorschläge hübsch in Englisch auf und schick es mir. Ich überarbeite
im Moment [1] die FAQs und bei der Gelegenheit könnte ich es gleich
mit aufnehmen. Ein Zwischenergebnis kannst Du Dir per anonCVS laden,
damit Du weißt, wo es am besten paßt.

Apropos: Hey Jens, lebst Du auch noch?

bye,
Matthias

[1] Schon eine Weile, bin etwas im Streß.

Thorsten Gunkel

unread,
Oct 31, 2001, 5:24:04 AM10/31/01
to
Matthias Friedrich <ma...@mafr.de> wrote:
[scoren in slrn]

Wäre aber durchaus nützlich zu wissen ob nun per default zwischen
Groß/Kleinschreibung unterschieden wird oder nicht. Mein slrn scheint
per default nicht zu unterscheiden, die slrn Doku verweist aber auf
<http://space.mit.edu/~davis/slang/doc/html/slang-18.html> und dort
heißt es: "\c turn on case-sensitivity (default)". Oder versteh ich
da jetzt was flasch?

Nicht schlecht wäre auch wenn ich die Ausdrücke irgendwie gegen
Strings testen könnte.

Kann mir eigentlich mal jemand


~From: [ ]+[^ ]+[ ]+

erklären? Mindestens ein Leerzeichen gefolgt von mindestens einem
Nichtleerzeichen gefolgt von mindestens einem Leerzeichen? Wieso
filtert das auf Realnamen?
Warum nicht eher sowas:
~From: .*\c[A-Z]\c[a-z]+.*[ ].*\c[A-Z]\c[a-z]+.*
Irgendwas, Großbuchstabe, Kleinbuchstaben, irgendwo ein Leerzeichen,
Großbuchstabe, Kleinbuchstaben und irgendwas?

Wenn noch jemand eine tolle Filterregel kennt nur zu.

> bye,
> Matthias

Sebastian Posner

unread,
Oct 31, 2001, 5:49:09 AM10/31/01
to
Thorsten Gunkel meinte kundzutun:

> Wenn noch jemand eine tolle Filterregel kennt nur zu.

Score:: =-10000
X-Newsreader: Outlook
X-Newsreader: Microsoft


S"CNR"ebastian
--
Dieser Artikel ging an folgende Newsgroups: de.comm.software.newsreader
Er wurde am Mittwoch, dem 31. Oktober im Jahre des Herrn 2001 verfaßt.

Jens Wahnes

unread,
Oct 31, 2001, 6:02:42 AM10/31/01
to
Thorsten Gunkel schrieb am 31. Oktober 2001 11:24:04 CET folgendes:

> Wäre aber durchaus nützlich zu wissen ob nun per default zwischen
> Groß/Kleinschreibung unterschieden wird oder nicht.

AFAIK wird normalerweise nicht zwischen Groß- und Kleinschreibung
unterschieden.

> Nicht schlecht wäre auch wenn ich die Ausdrücke irgendwie gegen
> Strings testen könnte.

Was meinst du damit?

> Kann mir eigentlich mal jemand
> ~From: [ ]+[^ ]+[ ]+
> erklären? Mindestens ein Leerzeichen gefolgt von mindestens einem
> Nichtleerzeichen gefolgt von mindestens einem Leerzeichen? Wieso
> filtert das auf Realnamen?

Ganz einfach, egal ob es eine "From:"-Zeile im Format

From: foo...@example.com (Foo Bar)

oder

From: Foo Bar <foo...@example.com>

ist, sobald der "Realname"-Teil nur aus einem Wort besteht, gibt es
keine zwei Leerzeichen mehr in der "From:"-Zeile. Nicht erschlagen
werden dadurch natürlich Konstruktionen wie

From: G. Meier <me...@example.com>

wohl aber

From: G.Meier <me...@example.com>


Jens

--
Alle Wege führen an Redmond vorbei.

Matthias Friedrich

unread,
Oct 31, 2001, 10:50:10 AM10/31/01
to
Thorsten Gunkel <tgu...@gmx.de> wrote:
> Matthias Friedrich <ma...@mafr.de> wrote:
> [scoren in slrn]
> Wäre aber durchaus nützlich zu wissen ob nun per default zwischen
> Groß/Kleinschreibung unterschieden wird oder nicht.

Per Default unterscheidet der slrn nicht.

> Mein slrn scheint per default nicht zu unterscheiden, die slrn Doku
> verweist aber auf
> <http://space.mit.edu/~davis/slang/doc/html/slang-18.html> und dort
> heißt es: "\c turn on case-sensitivity (default)". Oder versteh ich
> da jetzt was flasch?

Wenn Du in Deinem regulären Ausdruck irgendwo ein "\c" stehen hast,
dann wird ab diesem Punkt bis zum Ende des Ausdrucks (oder bis zum
nächsten "\C") zwischen Groß- und Kleinschreibung unterschieden.

Beispiel: Regexp String Match
a A ja
A A ja
\ca A nein

> Nicht schlecht wäre auch wenn ich die Ausdrücke irgendwie gegen
> Strings testen könnte.

#v+
$ cat slmatch.c
#include <stdio.h>
#include <string.h>
#include <slang.h>

#define BUF_SIZE 256

int main(int argc, char *argv[])
{
unsigned char buf[BUF_SIZE];
SLRegexp_Type regex;
unsigned char *bp;

if ( argc != 3 ) {
fprintf(stderr, "slmatch: Usage: slmatch pattern string\n");
exit(2);
}

regex.pat = (unsigned char *)argv[1];
regex.buf = buf;
regex.buf_len = BUF_SIZE;
regex.case_sensitive = 0;

SLang_regexp_compile(&regex);

bp = SLang_regexp_match( (unsigned char *)argv[2], strlen(argv[2]),
&regex);

if ( bp == NULL ) {
printf("no match\n");
exit(1);
}

printf("match: %s\n", bp);

return 0;
}
$ cc -o slmatch slmatch.c -lslang
#v-

Dokumentiert ist wie üblich nichts davon. Sollte aber funktionieren.

bye,
Matthias

Thorsten Gunkel

unread,
Oct 31, 2001, 5:41:42 PM10/31/01
to
Matthias Friedrich <ma...@mafr.de> wrote:
> Thorsten Gunkel <tgu...@gmx.de> wrote:
>> Matthias Friedrich <ma...@mafr.de> wrote:
>> [scoren in slrn]
>> Wäre aber durchaus nützlich zu wissen ob nun per default zwischen
>> Groß/Kleinschreibung unterschieden wird oder nicht.
> Per Default unterscheidet der slrn nicht.
>> Mein slrn scheint per default nicht zu unterscheiden, die slrn Doku
>> verweist aber auf
>> <http://space.mit.edu/~davis/slang/doc/html/slang-18.html> und dort
>> heißt es: "\c turn on case-sensitivity (default)". Oder versteh ich
>> da jetzt was flasch?

In slang ist also \c default und in slrn \C.

>> Nicht schlecht wäre auch wenn ich die Ausdrücke irgendwie gegen
>> Strings testen könnte.

> $ cat slmatch.c

Sehr praktisch, danke! Findet sich das auch auf der slrn Seite oder in
einer der nächsten slrn Versionen? Hilft bestimmt noch mehr Leuten,
oder?


> Dokumentiert ist wie üblich nichts davon. Sollte aber funktionieren.

Sehe ich es eigentlich richtig dass
Subject: slrn
"[slrn] ..." nicht erwischt? Wenn ja wieso nicht?

Matthias Friedrich

unread,
Nov 1, 2001, 4:58:37 AM11/1/01
to
Thorsten Gunkel <tgu...@gmx.de> wrote:
> Matthias Friedrich <ma...@mafr.de> wrote:
[...]

> In slang ist also \c default und in slrn \C.

Fast. In slang kann man es sich als Programmierer aussuchen, was man
als Standard setzt.

[ slmatch.c ]


> Sehr praktisch, danke! Findet sich das auch auf der slrn Seite oder in
> einer der nächsten slrn Versionen?

Nein. Eigentlich war es nur ein 5-Minuten-Hack. Aber, wenn's noch
jemanden interessiert, dann kann ich ja ein paar Zeilen dazu schreiben
und es auf meine Homepage stellen.

>> Dokumentiert ist wie üblich nichts davon. Sollte aber funktionieren.

> Sehe ich es eigentlich richtig dass
> Subject: slrn
> "[slrn] ..." nicht erwischt? Wenn ja wieso nicht?

Seltsam. Kann es sein, daß Du da etwas mit Zeichenklassen ('[]')
oder vielleicht den Shell-Quotingmechanismen durcheinander gekommen
bist? Hier funktioniert es ordnungsgemäß:

$ ./slmatch slrn '[slrn]'
match: slrn]
$ ./slmatch '\[slrn\]' 'Scoring in slrn'
no match
$ ./slmatch '\[slrn\]' '[slrn] Scoring'
match: [slrn] Scoring
$ ./slmatch '\[slrn\]' 'Scoring with [slrn]'
match: [slrn]
$ ./slmatch '^\[slrn\]' 'Scoring with [slrn]'
no match
$ ./slmatch '^\[slrn\]' '[slrn] Scoring'
match: [slrn] Scoring
$

bye,
Matthias

Thomas Schultz

unread,
Nov 1, 2001, 6:45:15 AM11/1/01
to
* Thorsten Gunkel [2001-10-31 23:41] :

> Matthias Friedrich <ma...@mafr.de> wrote:
>> $ cat slmatch.c
> Sehr praktisch, danke! Findet sich das auch auf der slrn Seite oder
> in einer der nächsten slrn Versionen? Hilft bestimmt noch mehr
> Leuten, oder?

Ich verwende dazu einfach das Programm rgrep, das dem Editor jed
beiliegt und ebenfalls mit S-Lang RegExps arbeitet:

#v+
tststs@starflower:~ > echo '[slrn] Test' | rgrep -i slrn
[slrn] Test
#v-

Also matched (um auch gleich deine andere Frage zu beantworten) "slrn"
durchaus auf "[slrn] ...".

Wie gesagt ist es eine Besonderheit im slrn, dass die RegExps
normalerweise case insensitive ausgewertet werden; das ahme ich in
obiger Zeile durch die Option -i nach.
--
Thomas Schultz <tst...@gmx.de> * Recent news from http://slrn.sourceforge.net/
-> [2001-09-20] slrn is going international
-> [2001-08-20] slrn 0.9.7.2 released
-> [2001-08-11] slrn-announce mailing list created / wishlist reviewed

Thorsten Gunkel

unread,
Nov 1, 2001, 6:54:09 PM11/1/01
to
Matthias Friedrich <ma...@mafr.de> wrote:
> Thorsten Gunkel <tgu...@gmx.de> wrote:
>> Sehe ich es eigentlich richtig dass
>> Subject: slrn
>> "[slrn] ..." nicht erwischt? Wenn ja wieso nicht?
> Seltsam. Kann es sein, daß Du da etwas mit Zeichenklassen ('[]')
> oder vielleicht den Shell-Quotingmechanismen durcheinander gekommen
> bist? Hier funktioniert es ordnungsgemäß:

Irgendwie bin ich mal zur Überzeugung gelangt dass ich zu jeder
Subject Scorezeile die mich auch in [] noch interessiert zusätzlich
einen [] Eintrag brauche. Ganz glauben konnte ich das selbst nie aber
sicher ist sicher und so hab ich das beibehalten. Ohne Deinen 5
Minuten Hack hätte ich das werweißwie lange noch so gemacht. Arg!

> bye,
> Matthias

Ich geh jetzt erst mal mein Scorefile aufräumen

0 new messages