Как спарсить часть кода?

Melinio

Client
Регистрация
10.04.2015
Сообщения
11
Благодарностей
1
Баллы
3
Всем доброго времени суток.
Допустим у меня есть набор символов всегда одной длинны формата 1234567890
Как спарсить определенные символы, к примеру с 4 по 7 и с 8 по 10?
чтобы получилось в одной переменной 4567, а во второй 890.
Заранее благодарен за помощь.
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
Всем доброго времени суток.
Допустим у меня есть набор символов всегда одной длинны формата 1234567890
Как спарсить определенные символы, к примеру с 4 по 7 и с 8 по 10?
чтобы получилось в одной переменной 4567, а во второй 890.
Заранее благодарен за помощь.
Регуляркой искать:
Код:
(?<=^.{3}).{4}
Она пропускает первые три символа, а потом после них берет первые 4 шт. Получится как раз "4567".
Ну и для второго варианта:
Код:
(?<=^.{7}).{3}
 
  • Спасибо
Реакции: evgen_po и Melinio

Melinio

Client
Регистрация
10.04.2015
Сообщения
11
Благодарностей
1
Баллы
3
Спасибо больше. И еще вопрос:
Если при парсе у меня бывает разное количество значений, можно как-то брать последний результат?
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
Не уверен, что понял вопрос, но вот регулярка что берет последний символ:
Код:
.(?=$)
Или берет три последние символа:
Код:
.{3}(?=$)
Или если у нас может быть меньше трех символов вообще, то лучше вот так задавать (ищет от одного до трех последних символов, но удовлетворится и одним, если больше нету вообще):
Код:
.{1,3}(?=$)
 
  • Спасибо
Реакции: Melinio

Melinio

Client
Регистрация
10.04.2015
Сообщения
11
Благодарностей
1
Баллы
3
Не уверен, что понял вопрос, но вот регулярка что берет последний символ:
Код:
.(?=$)
Или берет три последние символа:
Код:
.{3}(?=$)
Или если у нас может быть меньше трех символов вообще, то лучше вот так задавать (ищет от одного до трех последних символов, но удовлетворится и одним, если больше нету вообще):
Код:
.{1,3}(?=$)
А можно как-то сделать чтобы парсилось до последнего числа?
К примеру есть код: Num= 1234567 Set=654321
Но и бывает что попадается такой код: Num= 1234567
Мне надо в обоих случаях взять только 123456
 

Alex733

Client
Регистрация
27.11.2017
Сообщения
330
Благодарностей
243
Баллы
43
Возможно это регулярка поможет: \d+
 
  • Спасибо
Реакции: Melinio

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)