  We study the space complexity of the following problem: For a fixed regular
language $L$, test membership of a sliding window of length $n$ to $L$ over a
given stream of symbols. For deterministic streaming algorithms we prove a
trichotomy theorem, namely that the (optimal) space complexity is either
constant, logarithmic or linear, measured in the window length $n$.
Additionally, we provide natural language-theoretic characterizations of the
space classes. We then extend the results to randomized streaming algorithms
and we show that in this setting, the space complexity of any regular language
is either constant, doubly logarithmic, logarithmic or linear. Finally, we
introduce sliding window testers, which can distinguish whether a window
belongs to the language $L$ or has Hamming distance $> \epsilon n$ to $L$. We
prove that every regular language has a deterministic (resp., randomized)
sliding window tester that requires only logarithmic (resp., constant) space.
