Converting Strings from and to Camel Case: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
[[Category: | [[Category:snippets]] | ||
== Convert from camelCaseString to camel_case_string == | == Convert from camelCaseString to camel_case_string == | ||
<code> | <code> |
Revision as of 19:12, 19 November 2015
Convert from camelCaseString to camel_case_string
QString fromCamelCase(const QString &s)
{
static QRegularExpression regExp1 {"(.)([A-Z][a-z]+)"};
static QRegularExpression regExp2 {"([a-z0-9])([A-Z])"};
QString result = s;
result.replace(regExp1, "\\1_\\2");
result.replace(regExp2, "\\1_\\2");
return result.toLower();
}
Convert from camel_case_string to camelCaseString
QString toCamelCase(const QString& s)
{
QStringList parts = s.split('_', QString::SkipEmptyParts);
for (int i=1; i<parts.size(); ++i)
parts[i].replace(0, 1, parts[i][0].toUpper());
return parts.join("");
}