Selamat petang (4.30 to 6.30) is formal Indo similar to selamat sore (2.30 to 6.30), although petang as a single word can refer to evening and night; plus it can refer to dark,dusk, etc in sentences. The exact times given a ave can vary a bit depending upon sunset. In colloquial Indo none of this is consistent.
i've been told 'siang' is from around 11am until about 3pm. however it is also used generally to refer to the 'daytime' in the expression 'siang hari'.
but as we can see in this course there appears to be some crossover of word choice once afternoon and evening time arrive! it would be good then, where no further context is provided, if all possible answers be accepted.