Next: Reverse Scoring, Previous: Scoring On Other Headers, Up: Scoring

### 7.10 Scoring Tips

Crossposts
  If you want to lower the score of crossposts, the line to match on is the `Xref` header.

                ("xref" (" talk.politics.misc:" -1000))

Multiple crossposts
  If you want to lower the score of articles that have been crossposted to more than, say, 3 groups:

                ("xref"
                  ("[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+ +[^:\n]+:[0-9]+"
                   -1000 nil r))

Matching on the body
  This is generally not a very good idea—it takes a very long time. Gnus actually has to fetch each individual article from the server. But you might want to anyway, I guess. Even though there are three match keys (`Head`, `Body` and `All`), you should choose one and stick with it in each score file. If you use any two, each article will be fetched twice. If you want to match a bit on the `Head` and a bit on the `Body`, just use `All` for all the matches.
Marking as read
  You will probably want to mark articles that have scores below a certain number as read. This is most easily achieved by putting the following in your `all.SCORE` file:

                ((mark -100))

  You may also consider doing something similar with `expunge`.

Negated character classes
  If you say stuff like `[^abcd]*`, you may get unexpected results. That will match newlines, which might lead to, well, The Unknown. Say `[^abcd\n]*` instead.