5 integer :: len
= 0, size
= 0
6 character, pointer :: chars(:) => null()
10 module procedure len_s
14 module procedure s_to_c
, s_to_slc
18 module procedure uppercase_c
22 module procedure replace_ccs
27 elemental
function len_s(s
)
28 type(string
), intent(in
) :: s
32 pure
function s_to_c(s
)
33 type(string
),intent(in
) :: s
34 character(length(s
)) :: s_to_c
37 pure
function s_to_slc(s
,long
)
38 type(string
),intent(in
) :: s
39 integer, intent(in
) :: long
40 character(long
) :: s_to_slc
43 pure
function lr_sc_s(s
,start
,ss
) result(l
)
44 type(string
), intent(in
) :: s
45 character(*), intent(in
) :: ss
46 integer, intent(in
) :: start
50 pure
function lr_ccc(s
,tgt
,ss
,action
) result(l
)
51 character(*), intent(in
) :: s
,tgt
,ss
,action
53 select
case(uppercase(action
))
58 function replace_ccs(s
,tgt
,ss
) result(r
)
59 character(*), intent(in
) :: s
,tgt
60 type(string
), intent(in
) :: ss
61 character(lr_ccc(s
,tgt
,char(ss
),'first')) :: r
62 end function replace_ccs
64 pure
function uppercase_c(c
)
65 character(*), intent(in
) :: c
66 character(len(c
)) :: uppercase_c
67 end function uppercase_c