The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Regexp"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Regexp"  
Сообщение от ivanbin email(ok) on 28-Июн-07, 17:00 
Нужно извлекать строки типа RepP100002673 из файла.

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

[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?((,|;)? *[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?)*

Ужасно конечно, но ничего другого не придумал)

Количество символом строго 13, часть RepP1 не меняется, растут только числа справа.

Возникли проблемы, если строка приобретает такой вид - RepP100002021, то выделяется только часть до .....21 (RepP1000020).

Подскажите, как правильно сформировать выражение, чтобы точно выделялся весь кусок из 13 символов?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

  • Regexp, NuINu, 17:19 , 28-Июн-07, (1)  
    • Regexp, NuINu, 17:25 , 28-Июн-07, (3)  
  • Regexp, AMDmi3, 17:22 , 28-Июн-07, (2)  

Сообщения по теме [Сортировка по времени, UBB]


1. "Regexp"  
Сообщение от NuINu (??) on 28-Июн-07, 17:19 
>Нужно извлекать строки типа RepP100002673 из файла.
>
>В данный момент использую данное выражение:
>
>[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?((,|;)? *[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?)*
>
>Ужасно конечно, но ничего другого не придумал)
>
>Количество символом строго 13, часть RepP1 не меняется, растут только числа справа.
>
>
>Возникли проблемы, если строка приобретает такой вид - RepP100002021, то выделяется только
>часть до .....21 (RepP1000020).
>
>Подскажите, как правильно сформировать выражение, чтобы точно выделялся весь кусок из 13
>символов?
можешь пример файла привести?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Regexp"  
Сообщение от NuINu (??) on 28-Июн-07, 17:25 
>>Нужно извлекать строки типа RepP100002673 из файла.
>>
>>В данный момент использую данное выражение:
>>
>>[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?((,|;)? *[Rr]ep[Pp]10{1,7}[1-9]{1,6}0?)*

ну а так на вскидку.


\([Rr]ep[Pp]\d{9})\g

должен выбрать все строки с цифрами.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Regexp"  
Сообщение от AMDmi3 (??) on 28-Июн-07, 17:22 
>Подскажите, как правильно сформировать выражение, чтобы точно выделялся весь кусок из 13
>символов?

/RepP1\d{8}/ и все дела. Если надо еще проверять на что-то числа, делай это в коде

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру