Skip to content
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
Collapse
Brand Logo

CELua[RU]

  1. Главная
  2. Программирование
  3. Часть2. Lua простые регулярные выражения

Часть2. Lua простые регулярные выражения

Запланировано Прикреплена Закрыта Перенесена Программирование
lua regularce lua
1 Сообщения 1 Posters 32 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • MasterGHM Не в сети
    MasterGHM Не в сети
    MasterGH Администраторы
    написал в отредактировано MasterGH
    #1

    Если нужно найти начало и конец подстроки. Пример

    Попробуем найти слово lab в троке gamehacklab.ru

    print(string.find('gamehacklab.ru', 'lab'))
    >9 11
    

    Если не найдена подстрока, то вернет nil.
    С помощью string.match можем выводить не индексы, а строку

    print(string.match('gamehacklab.ru', 'lab'))
    >lab
    

    С помощью string.gmatch можем выводить последовательно строки

    Где 'a.' означает символ 'a' и еще один следующий любой

    local result = string.gmatch('gamehacklab.ru', 'a.')
    print(result())
    print(result())
    print(result())
    
    вывод
    >am 
    >ac 
    >ab 
    

    Здесь комбинация символов "%a+" означает искать слово пока оно не закончится

    s = "hello world from Lua"
    for w in string.gmatch(s, "%a+") do
      print(w)
    end
    
    Вывод
    > hello 
    > world 
    > from 
    > Lua
    

    А здесь заполняем таблицу ключ — значение из строки, которую можно было бы взять из файла

    t = {}
    s = "X=0, Y=0, Z=0"
    for k, v in string.gmatch(s, "(%w+)=(%w+)") do
      t[k] = v
    end
    
    for i, v in pairs(t) do
      print(i..' = '..v)
    end
    
    Вывод
    >Z = 0 
    >X = 0 
    >Y = 0 
    

    Пока на этом все... Более сложные примеры в предыдущей части записи

    1 ответ Последний ответ
    0

Powered by NodeBB | Contributors
СeLua[RU] 2024©
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы