import java.text.ParsePosition;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeFormatterBuilder;
import java.util.Locale;
import java.util.Map;

public class Main {
	public static void main(String[] args) {
		String strDateTime = "18-sep-2009 10:25:11 Romance Daylight Time";
		Map<String, String> zoneIdMap = Map.of("Romance Daylight Time", "Europe/Paris");

		DateTimeFormatter dtf = new DateTimeFormatterBuilder()
									.parseCaseInsensitive()
									.appendPattern("dd-MMM-uuuu HH:mm:ss")
									.toFormatter(Locale.ENGLISH);

		ZonedDateTime zdt = LocalDateTime.from(dtf.parse(strDateTime, new ParsePosition(0)))
								.atZone(ZoneId.of("Romance Daylight Time", zoneIdMap));
		System.out.println(zdt);
	}
}