reverse(3f) - [M_strings:EDITING] Return a string reversed
(LICENSE:PD)
elemental pure function reverse(str) result (string)
character(*), intent(in) :: str
character(len(str)) :: string
reverse(string) returns a copy of the input string with
all characters reversed from right to left.
Sample program:
program demo_reverse
use M_strings, only: reverse
implicit none
character(len=:),allocatable :: s
write(*,*)'REVERSE STRINGS:',reverse('Madam, I''m Adam')
s='abcdefghijklmnopqrstuvwxyz'
write(*,*) 'original input string is ....',s
write(*,*) 'reversed output string is ...',reverse(s)
end program demo_reverse
Results:
> REVERSE STRINGS:madA m'I ,madaM
> original input string is ....abcdefghijklmnopqrstuvwxyz
> reversed output string is ...zyxwvutsrqponmlkjihgfedcba
John S. Urban
Public Domain
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | string |
elemental function reverse(string) result (rev)
! ident_21="@(#) M_strings reverse(3f) Return a string reversed"
character(len=*),intent(in) :: string ! string to reverse
character(len=len(string)) :: rev ! return value (reversed string)
integer :: length
integer :: i
length = len(string)
do i = 1,length
rev(i:i)=string(length-i+1:length-i+1)
enddo
end function reverse