регулярное выражение php для строки найти /A1 получить дальше идет цифры после /A1 отдельно в массив
пример /A1012
array['A1','0','1','2']
Для решения задачи поиска строки с паттерном /A1 и последующего разделения цифр после /A1 в массив можно использовать регулярное выражение в PHP. Вот пример решения:
php
$string = '/A1012';
$pattern = '/\/A1(\d*)/'; // Паттерн для поиска /A1 и следующих цифр
preg_match($pattern, $string, $matches);
if (!empty($matches)) {
$result = ['A1']; // Начинаем массив с 'A1'
$digits = str_split($matches[1]); // Разбиваем цифры на отдельные элементы
$result = array_merge($result, $digits); // Объединяем с 'A1'
print_r($result);
} else {
echo "Паттерн не найден";
}Объяснение:
- Регулярное выражение: \/A1(\d*)
- \/ — экранированный слэш.
- A1 — точное совпадение с A1.
- (\d*) — группа захвата для любых цифр (0 или больше) после A1.
- preg_match:
- Ищет совпадение с паттерном в строке и сохраняет результат в $matches.
- $matches[0] — полное совпадение (/A1012).
- $matches[1] — цифры после /A1 (012).
- str_split:
- Разбивает строку цифр (012) на массив ['0', '1', '2'].
- array_merge:
- Объединяет ['A1'] с массивом цифр, чтобы получить итоговый массив ['A1', '0', '1', '2'].
Вывод для /A1012:
php
Array
(
[0] => A1
[1] => 0
[2] => 1
[3] => 2
)Дополнительно:
- Если строка не соответствует паттерну (например, /B1 или /A2), массив $matches будет пустым, и вы получите сообщение "Паттерн не найден".
- Если после /A1 нет цифр (например, /A1), массив будет ['A1'].
Если у вас есть другие примеры строк или дополнительные условия, уточните, и я адаптирую решение.
999ms