str_pad(PHP 4 >= 4.0.1) str_pad - заполняет строку определённой длины другой строкой. Описаниеstring str_pad (string input, int pad_length [, string pad_string [, int pad_type]]) Эта функция возвращает строку input, заполненную влево, вправо или в обоих направлениях на специфицированную длину. Если необязательный аргумент pad_string отсутствует, input заполняется пробелами, иначе заполняется символами из pad_string до верхней границы. Необязательный аргумент pad_type может быть: STR_PAD_RIGHT, STR_PAD_LEFT или STR_PAD_BOTH. Если pad_type не специфицирован, принимается STR_PAD_RIGHT. Если значение pad_length отрицательное или меньше длины input-строки, заполнение не выполняется. |
||||||||||
|
||||||||||
Первая часть совпадает с необязательной открывающей скобкой, и, если символ
имеется, устанавливает его как первую совпавшую подстроку.
Вторая часть совпадает с одним или более символов, которые не являются скобками.
Третья часть это условный субпатэрн, который проверяет, совпадает ли первый
набор скобок или нет. Если совпал, то есть если субъект начинается с открывающей
скобки, условие будет TRUE, будет выполняться yes-pattern и
необходима закрывающая скобка. Иначе, поскольку no-pattern отсутствует, субпатэрн
не совпадёт ни с чем. Другими словами, этот патэрн совпадает с последовательностью
не-скобок, возможно, заключённой в скобки.
Если условие не является последовательностью цифр, оно обязано быть утверждением.
Это может быть положительное или отрицательное lookahead или lookbehind утверждение.
Рассмотри патэрн, снова содержащий незначащий пробел и две альтернативы во второй
строчке:
(?(?=[^a-z]*[a-z])
\d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} )
Условие это положительное опережающее/lookahead утверждение, которое совпадает
с необязательной последовательностью не-букв с последующей буквой. Другими словами,
оно проверяет наличие минимум одной буквы в субъекте. Если буква найдена, вновь
проверяется совпадение субъекта с первой альтернативой; иначе проверяется совпадение
со второй альтернативой. Этот патэрн совпадает со строками одной из двух форм:
dd-aaa-dd или dd-dd-dd, где aaa это буквы, а dd это цифры.
| |