libcalamares: deal with QRegExp

This commit is contained in:
Adriaan de Groot 2023-09-03 15:21:26 +02:00
parent 99d012c5ce
commit fe8939e745
2 changed files with 13 additions and 10 deletions

View File

@ -15,6 +15,7 @@
#include "utils/String.h"
#include <QFile>
#include <QRegularExpression>
#include <QString>
static const char TZ_DATA_FILE[] = "/usr/share/zoneinfo/zone.tab";
@ -108,7 +109,7 @@ loadTZData( RegionVector& regions, ZoneVector& zones, QTextStream& in )
continue;
}
QStringList list = line.split( QRegExp( "[\t ]" ), SplitSkipEmptyParts );
QStringList list = line.split( QRegularExpression( "[\t ]" ), SplitSkipEmptyParts );
if ( list.size() < 3 )
{
continue;
@ -140,7 +141,7 @@ loadTZData( RegionVector& regions, ZoneVector& zones, QTextStream& in )
}
QString position = list.at( 1 );
int cooSplitPos = position.indexOf( QRegExp( "[-+]" ), 1 );
int cooSplitPos = position.indexOf( QRegularExpression( "[-+]" ), 1 );
double latitude;
double longitude;
if ( cooSplitPos > 0 )

View File

@ -18,7 +18,7 @@
#include <QByteArray>
#include <QFile>
#include <QFileInfo>
#include <QRegExp>
#include <QRegularExpression>
void
operator>>( const YAML::Node& node, QStringList& v )
@ -32,9 +32,6 @@ operator>>( const YAML::Node& node, QStringList& v )
namespace CalamaresUtils
{
const QRegExp _yamlScalarTrueValues = QRegExp( "true|True|TRUE|on|On|ON" );
const QRegExp _yamlScalarFalseValues = QRegExp( "false|False|FALSE|off|Off|OFF" );
QVariant
yamlToVariant( const YAML::Node& node )
{
@ -60,21 +57,26 @@ yamlToVariant( const YAML::Node& node )
QVariant
yamlScalarToVariant( const YAML::Node& scalarNode )
{
static const auto yamlScalarTrueValues = QRegularExpression( "^(true|True|TRUE|on|On|ON)$" );
static const auto yamlScalarFalseValues = QRegularExpression( "^(false|False|FALSE|off|Off|OFF)$" );
static const auto yamlIntegerValues = QRegularExpression( "^[-+]?\\d+$" );
static const auto yamlFloatValues = QRegularExpression( "^[-+]?\\d*\\.?\\d+$" );
std::string stdScalar = scalarNode.as< std::string >();
QString scalarString = QString::fromStdString( stdScalar );
if ( _yamlScalarTrueValues.exactMatch( scalarString ) )
if ( yamlScalarTrueValues.match( scalarString ).hasMatch() )
{
return QVariant( true );
}
if ( _yamlScalarFalseValues.exactMatch( scalarString ) )
if ( yamlScalarFalseValues.match( scalarString ).hasMatch() )
{
return QVariant( false );
}
if ( QRegExp( "[-+]?\\d+" ).exactMatch( scalarString ) )
if ( yamlIntegerValues.match( scalarString ).hasMatch() )
{
return QVariant( scalarString.toLongLong() );
}
if ( QRegExp( "[-+]?\\d*\\.?\\d+" ).exactMatch( scalarString ) )
if ( yamlFloatValues.match( scalarString ).hasMatch() )
{
return QVariant( scalarString.toDouble() );
}