Fixed-length character variables often carry padding. adjustl, trim, and len_trim make the visible text explicit.

Program

Play the program to choose the amount of left padding and normalize the label.

trimmed_text.f90
program trimmed_text_demo
    implicit none
    integer :: pad_count
    integer :: visible
    character(len=20) :: raw
    character(len=20) :: cleaned

    pad_count = 
    raw = repeat(' ', pad_count) // 'beta   '
    cleaned = adjustl(raw)
    visible = len_trim(cleaned)
    print '(A, 1X, I0)', trim(cleaned), visible
end program trimmed_text_demo
program trimmed_text_demo
    implicit none
    integer :: pad_count
    integer :: visible
    character(len=20) :: raw
    character(len=20) :: cleaned

    pad_count = 
    raw = repeat(' ', pad_count) // 'beta   '
    cleaned = adjustl(raw)
    visible = len_trim(cleaned)
    print '(A, 1X, I0)', trim(cleaned), visible
end program trimmed_text_demo
program trimmed_text_demo
    implicit none
    integer :: pad_count
    integer :: visible
    character(len=20) :: raw
    character(len=20) :: cleaned

    pad_count = 
    raw = repeat(' ', pad_count) // 'beta   '
    cleaned = adjustl(raw)
    visible = len_trim(cleaned)
    print '(A, 1X, I0)', trim(cleaned), visible
end program trimmed_text_demo
repeat `repeat(' ', pad_count)` creates a controlled amount of padding.
adjustl `adjustl` moves visible text to the left side of the character value.
len_trim `len_trim` counts non-padding characters.