U.S. President Donald Trump says the war on Iran could be over within two to three weeks, signalling a possible wind-down of the conflict even without a formal deal.