|
|
|
| Товарищи, помогите! Есть файл 1.csv, читаем из него строки. Пример строки:
"абракадабра TOYOTA абракадабра COROLLA"
Надо вытащить сначала TOYOTA, затем COROLLA". Пишу так:
<?
$str=file_get_contents("1.csv");
$arr=explode("\"",$str);
foreach ($arr as $this)
{
eregi('[a-z,\-]{3,14}[[:space:]]',$this,$mark_for_insert);
echo $mark_for_insert[0]."-".$mark_for_insert[1]."<br>";
}
$mark_for_insert="";
}
?>
Результат: Нулевой элемент видит, первый НЕТ!! Что не так? Заранее спасибо. | |
|
|
|
|
|
|
|
для: flychepel
(25.04.2010 в 07:45)
| | eregi -> preg
непонятный пример.. если названия известны то их и ищете..
| |
|
|
|
|
|
|
|
для: а-я
(25.04.2010 в 08:22)
| | Нет-нет, названия заранее неизвестны. Я для примера написал Toyota... | |
|
|
|
|
|
|
|
для: flychepel
(25.04.2010 в 08:40)
| | уточню: в стоке русского текста есть марка и модель иномарки. в любом месте стороки может быть. | |
|
|
|
|
|
|
|
для: flychepel
(25.04.2010 в 08:41)
| | 1. Лучше и вправду PCRE. То есть preg_match или preg_match_all
2. CSV состоит из табличных (не текстовых) строк. Табличные строки состоят из ячеек. Ячейка - в том или ином смысле - эже текстовая строка. Следует определиться с ячейкой.
3. с иномарками ни один стандартный инструмент не работает. php просто не знает такого понятия. | |
|
|
|