2
정수를 사용하여 문자열로 변환하는 함수 str
이 있습니다. 나는 또한 그 값의 문자열의 부분 문자열을 고려하기를 원한다. 문자 값보다 문자 값이라면 쉽다.문자열 함수 결과의 하위 문자열을 참조 할 수 있습니까?
즉,이 같은 것을 쓰고 싶습니다
str(12345)(2:3)
대신이 작업을 수행 할 필요없이 :
character(10) :: c
c = str(12345)
print *, c(2:3)
또는 내 자신의 substr()
기능을 압연. 임시 문자 변수에 문자 값을 저장하거나 다른 함수를 작성하지 않고 원하는 것을 수행 할 수있는 방법이 있습니까?
program main
character(10) :: c
! works fine
c = str(12345)
print *, c(2:3)
! nope
print *, str(12345)(2:3)
! this would work if i wrote a substr function
print *, substr(str(12345), 2, 3)
contains
character(len=1064) function str(k)
! convert an integer to string
integer, intent(in) :: k
write (str, *) k
str = adjustl(str)
end function str
end program main
은 동일합니다 여부를하지만 블라디미르의 대답은 기본적으로 너무 같은 경우 @francescalus는 나도 몰라 이 시점에서 당신과 블라디미르의 전문 지식을 받아 들일 수있어서 기쁩니다. 그러나 여전히 유용한 아이디어에 관심이 있습니다. – JohnE
str()에 선택적 인수를 추가하는 방법 (예 : str (12345, idx = [2, 삼])? – roygvib
예, 배열과 매우 비슷합니다. 나는 실제로 복제본을 검색하려고 시도했지만 처음 히트 곡 중 하나를 보지 못했습니다. –