본관은 해주(海州). 자는 자문(子文). 정원희(鄭元禧)의 증손으로, 할아버지는 정흠(鄭欽)이고, 아버지는 정효준(鄭孝俊)이며, 어머니는 이진경(李眞卿)의 딸이다.
1652년(효종 3) 성균관 시험에서 1등하였고, 증광문과에 병과로 급제하여 정언·장령 등을 지냈다. 1660년(현종 1) 장령으로 대간에서 목사 처리를 잘못한 혐의를 받고 있던 개성유수 남노성(南老星)을 탄핵하는 데 반대하였고, 약방 입진을 거부하는 국왕에게 간언하였다.
1663년 양주목사로 나갔으나 균전을 이행하지 않은 죄목으로 파직되었고, 1668년 진하사 겸 사은사의 서장관으로 청을 다녀왔다. 1674년 강계부사로 나갔으며 곧 월경 범죄자를 잘못 다스린 죄로 직첩을 환수당했다. 1675년(숙종 1) 승지로 승진하여 국왕의 질책을 받아 물러나 있던 윤휴(尹鑴)를 구원하기도 했다. 1677년 경상도관찰사로 나갔다가 이듬해 진위 겸 진향사의 부사로 청을 다녀와 청나라의 상황을 상세히 보고하였다.
이 후 승지·대사간 등을 역임하면서 허목(許穆)의 서용 주장 등 남인 당론을 행사하였다. 이듬해 경신환국으로 광주목사로 좌천되었다가 서인으로부터 인물이 비루하고 복창군(福昌君)·복선군(福善君)의 심복이라는 이유로 관직에서 축출되었다. 1689년 기사환국으로 재기용되어 대사간, 한성우윤·강화유수, 도승지·대사헌, 형조참판 등을 지냈다.