A woman in her thirties was stabbed during the early hours of Saturday morning close to the King James pub in Perth city centre.
Police have launched an investigation into the attack which occurred at around 1am on Carpenter Street as the victim walked towards Kinnoull Street.
One witness rushed to the woman’s aid after hearing “the most horrific scream”.
The witness said: “She lifted up her top and there was blood coming out.
“She was shaking so much.”
The King James Pub released a statement saying their thoughts were with the victim.
It said: “Just so everyone knows our thoughts are with the poor girl who was injured and found on Carpenter Street last night by our staff after closing.
“Pub is open as usual today as incident was nothing to do with the pub other than staff helping the girl.”
The women was taken to Ninewells Hospital were her injuries are described as “minor”.
Police Scotland has said that “extensive enquiries” into the stabbing are ongoing but stressed that such attacks were “unusual” in the area.
The suspect is described as being white, in his early thirties, around 5ft 5in and of a medium build.
He was unshaven and wearing a light blue hooded top, dark trousers and black and white trainers.
Detective Inspector Allan Thomson, who is leading the investigation, said: “This is an extremely rare incident to happen in this area therefore extensive enquiries are ongoing to establish the exact circumstances leading up to it.
“Sections of both Kinnoull Street and Carpenter Street were cordoned off to allow officers to carry out enquiries at the scene and I would like to thank the local community for its patience.
“I would also like to thank the members of the public who stopped to assist the woman involved before emergency services arrived.”
“Once again I want to stress just how unusual incidents of this nature are however please be reassured that an extensive investigation is ongoing including reviewing CCTV and house-to-house enquiries. If you have information and haven’t spoken to police yet, please get in touch.”
“While our investigation continues, I ask anyone with information to get in touch by calling 101 quoting reference number 0257 of September 21. Alternatively you can contact Crimestoppers on 0800 555111 to remain completely anonymous.”