Лекция: Функции, используемые в символьных выражениях
1) Len(Line) – длина символьной переменной или константы. В случае переменной это длина, объявленная в ее описании, в случае константы – количество символов между кавычками.
Аргумент Line– символьная переменная или константа.
Возвращаемое значение – длина аргумента (целое число)
В предыдущем примере: Len(Line10) равно 10; Len(‘Форт’) равно 4
2) Len_trim(Line) – длина строки без завершающих пробелов. Завершающие пробелы – это пробелы, идущие подряд после последнего символа, не равного пробелу, до конца строки
Аргумент Line– символьная переменная или константа.
Возвращаемое значение – длина аргумента без завершающих пробелов (целое число)
В предыдущем примере: после присваивания Line10 = ‘Фор’ // ‘тран’ Line10 равно ‘Фортран ’ (3 завершающих пробела),
а Len_trim(Line10) равно 7
3) Index(Line,Sub,L)– поиск подстроки в строке.
Аргументы Line– символьная переменная или константа (место поиска).
Sub – символьная переменная или константа (предмет поиска).
L – направление поиска(logical); .
.false.– слева направо,.true.– справа налево
Если третий аргумент отсутствует, то по умолчанию L =.false.
Возвращаемое значение – номер позиции первого вхождения Sub в Line (целое число). Независимо от направления поиска, номер позиции всегда ориентирован на начало строки. Если Sub не входит в Line, результат = 0.
Пример:
Line10 = ‘Фор’ // ‘тран’
N = Index(Line10, ‘тран’)! N = 4
N1 = Index(Line10, ‘р’, .true.)! N1 = 5
При вычислении N1 поиск производится справа налево (<–), поэтому N1 = 5 (номер позиции последнего символа ‘р’ в переменной Line10)