Fazlullah, the leader of a banned extremist group who sent reinforcements for the Taliban when US forces invaded Afghanistan in 2001, won a considerable following in the valley by using an FM radio station to campaign for the introduction of Islamic law.
After months of defiance, he took up arms in July, calling for war against the government.
Pervez Musharraf, Pakistan's president, cited instability in the northern tribal regions to justify imposing a state of emergency on November 3, a move critics say was designed to silence opposition forces weary of his military rule.
Major General Nasser Janjua, during a tour of the area, told reporters on Saturday that since launching an offensive last month, his 20,000-strong force had managed to retake all the towns seized by the fighters, driving some 400 to 500 of them into the Piochar side valley.
At an army base in Mingora, the region's main town, Janura said: "We have bottled them upward and we want to take a good toll of them."
The rest of Fazlullah's force, initially estimated to be about 5,000 strong, apparently hid their weapons and melted back into the local population.
Earlier this week, Janjua said, the army launched a devastating attack that forced thousands of people to flee the area and allowed them to seize Fazlullah's sprawling Imam Dheri complex, which includes a seminary, hostels and a mosque near Mingora.
Security forces also blew up Fazlullah's home.
Janjua forecast that the fighters would try to mount at least one counter attack and said it would take at least three to four months to stabilise the area.
Officials says fighters linked to Pakistani sectarian groups as well as the Taliban and al-Qaeda had joined with Fazlullah.
Janjua said those killed or captured in recent weeks included some Uzbeks and citizens from "friendly" countries, but refused to elaborate.
In unrelated violence in southern Pakistan, three supporters of Benazir Bhutto, the former prime minister, were killed on Saturday when armed men attacked her Pakistan People's Party office in Naseerabad.