hi I thought I 'escaped' the dot character by using \\. is that not the case?
Date: Fri, 4 Apr 2014 15:21:47 +0200 From: an...@familiesomers.nl To: qtsa...@outlook.com; interest@qt-project.org Subject: Re: [Interest] format of QString sarah jones schreef op 4-4-2014 15:16: Hi I have tried this regular expression - QRegularExpression expression("^[cfmt]_\\d\\d\\d\\d\\d\\d\\.rcd$"); if (expression.match(receivedFilename).hasMatch()); this finds a match for m_000006.rcd but unfortunately it also matches m_0000006.rcd and I cannot figure out why I have tried this in some of the online regular expression tools and it seems to work there What have I got wrong? A dot is not treated as a literal character . but as an operator. http://www.regular-expressions.info/dot.html For readabiliy, I'd not use \\d 6 times, but simply use [\\d]{6} instead. André Thanks Sarah > Date: Fri, 4 Apr 2014 13:58:10 +0200 > From: an...@familiesomers.nl > To: interest@qt-project.org > Subject: Re: [Interest] format of QString > > R. Reucher schreef op 4-4-2014 13:47: > > A slight modification to your proposed reg-exp: > > > > QRegExp regExp("(m|c)_([0-9]{6})\\.rcp"); > > For new (Qt 5) code, I really recommend using QRegularExpression instead > of QRegExp where possible. > > André > > > > > Regards, René > > > > On Friday 04 April 2014 13:25:36 Etienne Sandré-Chardonnal wrote: > >> Hi sarah, > >> > >> This is untested but should work: > >> > >> QRegExp regExp("(m|c)_([0-9]{6}).rcp"); > >> if(regExp.exactMatch(fileName)) > >> { > >> //Here we know that filename matches the pattern > >> QString letter = regExp.cap(1); //Will be "m" or "c" > >> QString number = regExp.cap(2); //Will contain the six digits as a > >> string > >> } > >> > >> > >> Regular expressions are a vast topic, you will find a lot of documentation > >> by googling it. > >> > >> > >> Etienne > >> > >> 2014-04-04 13:01 GMT+02:00 André Somers <an...@familiesomers.nl>: > >>> sarah jones schreef op 4-4-2014 12:47: > >>> Hi > >>> How would you advise that I ensure a QString object is of a given format. > >>> In particular I want to check that a QString conforms to the following > >>> m_ or c_ > >>> followed by 6 digits (0-9) > >>> followed by ".rcd" > >>> > >>> so m_000001.rcd matches as does c_000003.rcd > >>> but not m_aa00002.rcd > >>> etc > >>> > >>> A regular expression sounds like the right tool for that. See > >>> QRegularExpression (Qt5) or QRegExp (Qt4). > >>> > >>> André > >>> > >>> > >>> _______________________________________________ > >>> Interest mailing list > >>> Interest@qt-project.org > >>> http://lists.qt-project.org/mailman/listinfo/interest > > _______________________________________________ > > Interest mailing list > > Interest@qt-project.org > > http://lists.qt-project.org/mailman/listinfo/interest > > _______________________________________________ > Interest mailing list > Interest@qt-project.org > http://lists.qt-project.org/mailman/listinfo/interest
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest