Вы действительно можете использовать year(3:4)
; однако ваша строка будет по-прежнему иметь длину четыре символа, то есть она будет содержать две ваши цифры и две пробелы. Чтобы проиллюстрировать это, вот пример:
program trunc
character(len=4) :: year = "2011"
write(*,'(A,A,A)') '..', year, '..'
year = year(3:4)
write(*,'(A,A,A)') '..', year, '..'
end program trunc
Это печатает
..2011..
..11 ..
Чтобы действительно получить "11"
вместо "11 "
, вам нужно присвоить значение переменной, которая может содержать только два символа.