A person who annoyingly tries too hard to impress with their cleverness; a clever dick.
A person who makes an excessive or tedious show of their knowledge, especially regarding rules of vocabulary and grammar.
A person who is overly concerned with formal rules and trivial points of learning.
Pedantic.