Open domain question answering (QA) represents a challenge of natural language processing, aiming at returning exact answers in response to natural language questions. A novel pattern learning method for QA is developed. The key idea is to get answers using answer patterns learned from the Web. Although many other QA systems use the pattern based method, the method in this paper is implemented automatically and it can handle the problems other systems fail, such as the weakness of pattern restriction and so on. The experiment result on the TREC data indicates that the method is effective. It solves not only the questions relying on simple patterns, but also the questions that need complex patterns for answer extraction. The question number of the latter is about 80% in the question set of the TREC.