"; $ availableString = ~ s /мужчина /женщина /г; печать $ availableString; Выход: Я женщина. Он является женщина. В выводе, все экземпляры слова "человек" было заменено "женщина"; благодаря г модификатора. Внутренние переменные, $ 1, $ 2 ... $ 9 Вот, мы хотим, чтобы увидеть значения внутренних переменных, $ 1, $ 2, и т.д. принять после замены. Следующий код иллюстрирует это: использовать строгий; мой $ availableString = ". Я мужчина Вы человек.
"; $ availableString = ~ s /(человек) /женщина /; печать "\\ $ 1:", $ 1 ", \\ п"; Выход: $ 1: человек Существует одна группа (человек) в соответствующего шаблона. Это соответствует $ 1. После замены, $ 1 "человек", а не "женщина". Так, после того, как поиск и замена, внутренняя переменная имеет то, что соответствует и не то, что заменяется. Я не рассмотрел случай с г модификатора. Сплит Операция Существует оператор называется Сплит Оператор. Синтаксис: сплит /шаблон /, строка оператора сплит разбивает строку в списке суб строк и возвращает список. Картина является, например, сепаратор запятая.
Сепаратор не является частью возвращаемого списка. Рассмотрим следующий доступный строку: $ availableString = "один два три"; Если мы знаем регулярное выражение для выявления пробел между словами, то мы можем разделить эту строку в список, состоящий из слов, "один", "два" и "три". Этот список может быть массивом. \\ Является характер для пространства. \\ + Будет соответствовать пространстве один или более раз. Регулярное выражение, чтобы отделить эти слова является /\\ + /Мы предполагаем, что пространство может быть создано путем удара пробел больше, чем один раз.
Следующий код иллюстрирует использование оператора раскола с рисунком выше. использовать строгий; мой $ availableString = "один два три"; моиwords = Split /\\ + /, $ availableString; печатать "первый элемент:", $ слова [0], "\\ п"; печатать "Второй элемент:", $ слова [1], "\\ п"; печатать "Третий элемент:", $ слова [2], "\\ п"; В доступной строке слова ра