Theresa May has expressed “deep regret” for the massacre of at least 379 Indians in the Punjabi city of Amritsar by British colonial troops a century ago, but stopped short of apologising for the slaughter.

“We deeply regret what happened and the suffering caused,” May told parliament on Wednesday, three days before India marks 100 years since the killing.

Jeremy Corbyn, the leader of the Labour party, had called for “a full, clear and unequivocal apology”.

On 13 April 1919, a crowd gathered at Jallianwala Bagh, a public garden, including families having picnics and people protesting about the deportation of a pair of nationalist leaders. Many were unaware there was a ban on public gatherings in the city, which had been placed under the direct rule of the British Indian army to curb recent unrest.

Brig Gen George Dyer, the officer in charge of the city, lined his men up against a wall of the enclosed garden and they started firing without warning on the crowd for up to 10 minutes, stopping only when they had run out of ammunition. Official estimates put the death toll at 379 with up to four times as many wounded, though both tallies are thought to be significant underestimates.

Dyer was ordered to retire and Winston Churchill told parliament at the time that the massacre was “an extraordinary event, a monstrous event, an event which stands in singular and sinister isolation”.

“The tragedy of Jallianwala Bagh of 1919 is a shameful scar on British Indian history. As Her Majesty the Queen said before visiting Jallianwala Bagh in 1997, it is a distressing example of our past history with India,” May said on Wednesday.

The former British prime minister David Cameron described it as “deeply shameful” during a visit in 2013 but also stopped short of an apology.

The UK junior foreign minister Mark Field said on Tuesday that an apology could have financial implications and that “we debase the currency of apologies if we make them for many events”.

Navjot Singh Sidhu, a minister in the Punjab government, wrote a letter on Wednesday asking the leader of the state to seek an apology from the British prime minister.

“It would go a long way towards bettering people-to-people contact among our two nations if a strong message of reconciliation is delivered,” Sidhu said.

The UK Sikh Federation said in a tweet it was “very disappointing” that May had not apologised.

A ceremony is due to take place at the site of the massacre on Saturday.