Ein lexikalischer Scanner ist ein Programm. Es wird meist als Teil eines Compilers genutzt. Er verarbeitet eine Eingabedatei oder einen Eingabedatenstrom von Zeichen und erkennt dabei die Schlüsselwörter der betreffenden Programmsprache, die Bezeichner und konstante Werte wie Zahlen und Zeichenketten. Das Produkt des lexikalischen Scanners sind die sog. Tokens. Sie werden dann vom Parser weiterbearbeitet.
Beispiele lexikalischer Scanner sind das auf UNIX Betriebssystemen enthaltene Program lex, sowie das von der Free Software Foundation entwickelte flex.