Since service-oriented architectures make the commercial systems more reliable and reusable, they have gained more popularity in industry and scientific community in recent decades. Service-oriented architectures bring flexibility and reusability to software design. Due to the increasing number of services on the Web, finding a service which is suited to user requirements is crucial. The process of finding suitable services to user request is one of the main purposes of service-oriented architectures. Many methods have been proposed for service discovery in service-oriented architectures that try to fulfil user requirements and offer suitable services to user request; however the proposed methods do not have enough precision for discovering suitable services. In this paper, we propose a method for service discovery which offers more accurate services according to user request. The proposed method is a hybrid semantic matchmaker for service discovery in service oriented architecture. By providing accurate services suitable to user requests, we have greatly increased the reusability rate and reduced the time and cost of software development.