In a tense encounter, 37-year-old Johnstone had led 2-1 then 3-2 with the help of a 71 break, the highest of the match.
However, the sixth frame proved vital as Sharav fluked a brown before potting a good long blue to take the frame when Johnstone looked like he was going to win the match.
In the deciding frame, Johnstone started well, opening up a 40 point lead with five reds left, however Sharav showed his tenacity by making a 40 break to get back in the frame.
A safety exchange eventually resulted in Sharav potting the pink to secure his place in the final.
In tonight's second semi-final, Corstorphine's Ross Vallance plays Perth's Bobby Cruickshanks with the winner playing Sharav in the final on Friday night.