давно
Старший Модератор
312929
1973
27.12.2015, 03:24
общий
это ответ
Здравствуйте, racer30!
В Qt для работы с регулярными выражениями используется не одна функция, а целый набор классов. Предположим Вам нужно найти в строке определённую букву, например, 'a'. Тогда код будет выглядеть примерно так:
[code lang=shell]
QString string("ваша строка");
QRegularExpression RegExp("[a]");
QRegularExpressionMatch match = RegExp.match(string);
if (match.hasMatch())
{
int position = match.capturedStart(0);
}
[/code]
Здесь будет найдено первое вхождение буквы 'a' в строку. Если нужно найти все вхождения, используйте следующий код:
[code lang=shell]
QString string("ваша строка");
QRegularExpression RegExp("[a]");
QRegularExpressionMatchIterator iterator = RegExp.globalMatch(string);
while (iterator.hasNext())
{
QRegularExpressionMatch match = iterator.next();
if (match.hasMatch())
{
int position = match.capturedStart(0);
}
}
[/code]