|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
Добрый день есть куча файлов примерно такого имени 19-42-49 [A 4457601559902] 'DN_9404~' (44,-0,0,0) .wav 20-47-13 [P 9160] 'DN_9404~' (44,-0,0,0) .wav (внутренний номер) 16-41-14 [A 6789287109902] 'DN_9404~' (44,-0,0,0) .wav Нужно выцепить из квадратных скобок номер телефона и код цифры 9902 не нужны пока у меня получается в несколько этапов 1. с помощью реплайс убираю 9902. 2. (?<=\[..)(\d{5,})(?=\]) получаю цифры 678928710 для 3 файла ну дальше работа со строками последние 7 цифр номер телефона. все что осталось в наче 2(иногда атс не пишет 0 в код телефона) или 3 цифры код то есть для случаев должно быть 044 5760155 9160 067 8928710 Есть ли более оптимальный спосбо получить все за 1 итерацию ? Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 09:41 |
|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
Могу предложить такой вариант: \[[A-Z] (\d\d)(\d\d)?(\d{5})?(9902)?\] Если совпадений два, то это 91+60 = 9160 Если совпадений четыре, то первое это код, второе+третье это номер телефона, четвертое игнорируем. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 11:22 |
|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
А если код не 044, а 444, то строка соответственно будет [A 44457601559902]? Если так, то \[[A-Z] (\d)?(\d\d)(\d\d)?(\d{5})?(9902)?\] Соответственно код будет из 1+2 совпадений, номер из 3+4. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 11:28 |
|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
Antonariy, Код телефона всегда трехзначный и начинается на 0 (по крайней мере в Украине) попробовал ваш шаблон тут http://regexstorm.net/tester не то ). Но все равно спасибо за участие ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 12:17 |
|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
(\d{5,})[^(9902\]] такой шаблон возвращает уже нужный код с телефоном из 08-02-39 [A 6338403449902] 'DN_9405~' (44,-0,0,0) .wav получаем 633840344 осталось на досуге выйти на 063 3840344 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 13:51 |
|
Нужна помощь распарсить имя файла от атс
|
|||
---|---|---|---|
#18+
Andrey1306Antonariy, Код телефона всегда трехзначный и начинается на 0 (по крайней мере в Украине) ... в Никополь или Вишневое не пробовали звонить? .. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 15:22 |
|
|
start [/forum/topic.php?fid=20&msg=38720057&tid=1402603]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 144ms |
0 / 0 |