man perlfunc или "perldoc -f имя_функции | pod2text"
С помощью так называемых файловых тестов, которые имеют вид (-тест "имя файла"), например:
размер файла
существует ли файл
доступен ли на запись
количество дней со дня модификации
является ли терминалом
Простейший случай:
Сам модуль представляет из себя файл с именем MyModule.pm
следующего содержания:
MyModule.pm
package MyModule;
require Exporter;
@ISA = qw(Exporter);
@EXPORT = qw(идентификаторы для экспорта: подпрограммы, имена переменных и
пр.);
# Теперь после того, как вы напишите use MyModule в своей программе, у вас все
# упомянутые здесь идентификаторы станут видны. Этот метод не рекомендуется,
# так как вы "засоряете" именное пространство программы.
# И/или
@EXPORT_OK = qw(идентификаторы для экспорта: подпрограммы, имена переменных и
пр.);
# Идентификаторы, прописанные здесь будут видны в Вашей программе как
# MyModule::Идентификатор (подпрограммы) или $MyModule::Идентификатор
# (переменные)
# Или, Вы можете написать use MyModule qw(Ид1 Ид2 $Ид3); и все будет как в
# первом случае. Это рекомендуемый вариант.
... ваши подпрограммы и пр ....
1; # Обязательно
Программа, его использующая:
myprg.pl
use MyModule qw(...);
# Ну и далее
Подробности смотрите в perlmod(1), Exporter(3pm), Camel Book
Надо использовать функцию substr. Например, получить 15й символ из строки $string:
$char = substr($string, 15, 1);
Установить с 15го символа строки $string и обрезать ее:
substr($string, 15) = 'A';Можно даже использовать более чем односимвольные последовательности:
$ss = substr($string, 15, 5); substr($string, 15) = 'Хо-Хо';