Регулярные выражения



  • бесполезно, все равно пусто



  • Кол-во лет считаете с учетом дня рождения? Если нет, то одного года хватит.
    (\d{4,4})
    Либо для д/м/г
    (\d{2,2}.\d{2,2}.\d{4,4})



  • @besenok said in Регулярные выражения:

    бесполезно, все равно пусто

    Тогда подозреваю, что дело не в регулярке. Что-то либо не так на этапе передачи переменной в регулярное выражение, либо перед выводом в лог. Проверяйте названия переменных, действительно ли передается правильная исходная строка, и записывается ли результат в нужную переменную.



  • сам текст когда получаю он в двух строках пишется, там где количество лет

    "@besenok пользователю:
    39 лет дата его рождения 01.01.1900 года"
    Я применяю вот такую регулярку
    ":[\w\W] ([\s\S]+)\ лет\ [\s\S]"
    но вытягивает он его с энтером, определил таким образом сохраняю далее в файлик тектовый а он мне выдает 39 с новой строки
    вот так, как энтер этот убрать?



  • А если вообще такую регулярку написать: \d+
    Достанет самое первое число из строки. Если не поможет без проекта не смогу подсказать.



  • А как вообще можно обозначить ентер в BAS



  • @besenok новая строка это \n
    у тебя парсится вместе с новой строкой, потому что используешь это [\w\W]

    один из вариантов:
    \n(\d+)\ лет
    обязательно указать, что тебе нужна первая группа, тогда получишь только цифру.



  • Учитывайте, что, скорее всего, возможны варианты:
    21 год
    22 года
    25 лет



  • Спасибо за помощь, получилось с \n


Log in to reply
 

Looks like your connection to Bablosoft was lost, please wait while we try to reconnect.