asics
Новичок
Универсальное регулярное выражение.
Есть 2 текстовых документа, регулярками нужно взять из каждого
2 дробных числа после цифр "9,2" и "19,2" и записать их в соответствующие ячейки таблиц базы.
документ 1.
9,2,53.2271,17028.5082;19,2,53.2271,17028.5082;
документ 2.
19,2,53.5471,15558.5082;9,2,83.9976,47558.1773;
Мой код:
Проблема в том, что мой код второй документ обрабатывает отлично, а в первом не забирает значения после "9,2".
Почему он не работает для первого я понимаю, нужно убрать [^0-9] в первой строке кода и заработает для документа1, но в этом случаево втором документе будет забирать значения после "19,2", когда нужно после "9,2".
т.е. для каждого в отдельности написать не проблема, но нужен универсальный.
Можно ли составить универсальный код который будет обрабатывать оба документа корректно?
P.S. То, что мне это нужно не для кражи контнта я объяснил админу в этой теме.
Есть 2 текстовых документа, регулярками нужно взять из каждого
2 дробных числа после цифр "9,2" и "19,2" и записать их в соответствующие ячейки таблиц базы.
документ 1.
9,2,53.2271,17028.5082;19,2,53.2271,17028.5082;
документ 2.
19,2,53.5471,15558.5082;9,2,83.9976,47558.1773;
Мой код:
PHP:
//9,2
preg_match('/[^0-9]9,2,(\d*\.\d*|\d*),(\d*\.\d*|\d*)\;/',$content,$znak);
print_r($znak);
//19,2
preg_match('/[^0-9]19,2,(\d*\.\d*|\d*),(\d*\.\d*|\d*)\;/',$content,$znak1);
print_r($znak1);
Проблема в том, что мой код второй документ обрабатывает отлично, а в первом не забирает значения после "9,2".
Почему он не работает для первого я понимаю, нужно убрать [^0-9] в первой строке кода и заработает для документа1, но в этом случаево втором документе будет забирать значения после "19,2", когда нужно после "9,2".
т.е. для каждого в отдельности написать не проблема, но нужен универсальный.
Можно ли составить универсальный код который будет обрабатывать оба документа корректно?
P.S. То, что мне это нужно не для кражи контнта я объяснил админу в этой теме.
ИМХО, строка сама на простые решения напрашивается...
... ?