… | |
… | |
40 | |
40 | |
41 | # the following rules are rather effective on some newsgroups, |
41 | # the following rules are rather effective on some newsgroups, |
42 | # like alt.binaries.games.anime, where non-mime, uuencoded data |
42 | # like alt.binaries.games.anime, where non-mime, uuencoded data |
43 | # is very common |
43 | # is very common |
44 | |
44 | |
45 | return $1 if /([a-z0-9_]{3,}\.[a-z]{3,4}(?:.\d+))/i; |
|
|
46 | |
|
|
47 | # if we find some *.rar, take it as the filename |
45 | # if we find some *.rar, take it as the filename |
48 | return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i; |
46 | return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i; |
49 | |
47 | |
50 | # one common subject format |
48 | # one common subject format |
51 | return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i; |
49 | return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i; |
… | |
… | |
54 | return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i; |
52 | return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i; |
55 | |
53 | |
56 | # - (xxx) No. 1 sayuri81.jpg 756565 bytes |
54 | # - (xxx) No. 1 sayuri81.jpg 756565 bytes |
57 | # - (20 files) No.17 Roseanne.jpg [2/2] |
55 | # - (20 files) No.17 Roseanne.jpg [2/2] |
58 | return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/; |
56 | return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/; |
|
|
57 | |
|
|
58 | # try to detetc some common forms of filenames |
|
|
59 | return $1 if /([a-z0-9_\-+.]{3,}\.[a-z]{3,4}(?:.\d+))/i; |
59 | |
60 | |
60 | # otherwise just pass what we have |
61 | # otherwise just pass what we have |
61 | return (); |
62 | return (); |
62 | }; |
63 | }; |
63 | |
64 | |