PHP preg_split - сопоставлять пробелы, апострофы, обратные метки

У меня есть следующая строка из текстового поля INPUT POST:

' 123
'123
'' 123
''123
`123
` 123

Я хотел бы преобразовать его в следующий массив:

[0] => 123
[1] => 123
[2] => 123
[3] => 123
[4] => 123
[5] => 123
[6] => 123

Я пытаюсь с этим, но я не знаю, как объединить их все в одном регулярном выражении:

\ ('+)('+\s+)(`+)(`+\s+) \

Кажется, это не работает, как ожидалось.

Заранее спасибо!

2 ответа

Решение

Пытаться:

preg_match_all('/\d+/sim', $text, $result, PREG_PATTERN_ORDER);

и если вы хотите перебрать совпадения

for ($i = 0; $i < count($result[0]); $i++) {
    # your cleaned data = $result[0][$i];
}

Попробуйте использовать trim() и кормить его персонажами, которых нужно убрать. В этом случае это будет выглядеть так:

trim($inputString, ' \'`');

В зависимости от конкретной ситуации, вы можете просмотреть циклы ввода и выполнить это действие, а затем использовать array_push() добавить значение в массив.

Другие вопросы по тегам