Помогите написать рег выражение

L
На сайте с 17.05.2013
Offline
88
573

Есть такие строки (Артикул и название товара):

7518/15 Velur col. 021 (corallo) Ремень Sergio Belotti

8MPU Зонт складной MPU8

708457 Bl Портмоне Gianni Conti

7MPU Зонт складной MPU7, полуавтомат "Mano"

Нужно вырезать артикул - все что слева до Кирилицы:

1 вариант: 7518/15 Velur col. 021 (corallo)

2 вариант: 8MPU

3 вариант: 708457 Bl

Подскажите регулярку.. Не силен в них

iqmaker
На сайте с 17.04.2012
Offline
309
#1

grep -Po "^[\w\s\(\)\/\.]+" infile
L
На сайте с 17.05.2013
Offline
88
#2

Это перл? А как его в пхп адаптировать? в pregmatch?

iqmaker
На сайте с 17.04.2012
Offline
309
#3

Выражение не изменится добавьте / в начале и / и в конце выражения:


<?php
$file = fopen("infile", "r");
while(!feof($file)){
$line = fgets($file);
preg_match('/^[\w\s\(\)\/\.]+/', $line, $matches);
print_r( $matches );
}
?>
L
На сайте с 17.05.2013
Offline
88
#4

Выражение раотает, но не все обрабатывает, например неправильны следующие позиции:

9#-06 Сорочка Conti Uomo (40/170-176см) Остается 9#

2884/25 Nappa Lemon+Arancio+Corallo Ремень Sergio Belotti Остается 2884/25 Nappa Lemon

GM11014W 31,5 black Чемодан-тележка Verage Остается GM11014W 31

3089/15 Cashemire Velour col 0534- Camel Ремень Sergio Belotti Остается 3089/15 Cashemire Velour col 0534

0562 2-02.12/05 Кошелек Neri Karra Остается

Тоесть остаться все что с начала строки и до первого вхождения кирилицы

iqmaker
На сайте с 17.04.2012
Offline
309
#5

luckydan, ты вообще слово спасибо то способен произнести? Тебе кто-то что-то должен что-ли?

Задание мне даешь? Тем более можно чуть-чуть напрячь извилины, за тебя уже все сделали.

siv1987
На сайте с 02.04.2009
Offline
427
#6

preg_match('/^[^а-я]+/i', $line, $matches);

print_r($matches);

Минус - зависимость от кодировки

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий