Мне любопытно, если у вас есть строка, как бы вы обнаружили разделитель?
Мы знаем, что php может разбить строку с помощью explode (), для которой требуется параметр разделителя.
А как насчет метода определения разделителя перед отправкой его функции разнесения?
Сейчас я просто выводю строку для пользователя, и он вводит разделитель.Это нормально, но я ищу приложение для распознавания образов для меня.
Стоит ли искать регулярные выражения для этого типа распознавания образов в строке?
РЕДАКТИРОВАТЬ: я не смогпервоначально указать, что существует вероятный ожидаемый набор разделителей.Любой разделитель, который, вероятно, используется в CSV.Таким образом, технически любой может использовать любой символ для разделения файла CSV, но более вероятно использовать один из следующих символов: запятая, точка с запятой, вертикальная черта и пробел.
РЕДАКТИРОВАТЬ 2: Вот работоспособное решение Iпридумал «решительный разделитель».
$get_images = "86236058.jpg 86236134.jpg 86236134.jpg";
//Detection of delimiter of image filenames.
$probable_delimiters = array(",", " ", "|", ";");
$delimiter_count_array = array();
foreach ($probable_delimiters as $probable_delimiter) {
$probable_delimiter_count = substr_count($get_images, $probable_delimiter);
$delimiter_count_array[$probable_delimiter] = $probable_delimiter_count;
}
$max_value = max($delimiter_count_array);
$determined_delimiter_array = array_keys($delimiter_count_array, max($delimiter_count_array));
while( $element = each( $determined_delimiter_array ) ){
$determined_delimiter_count = $element['key'];
$determined_delimiter = $element['value'];
}
$images = explode("{$determined_delimiter}", $get_images);