この問題が発生します テキスト ファイルを開くと、一致する文字列を取得できません。次に、次のパターンをテストします: .* しかし、何も取得できません。きっとテキストファイルは読めるし、パターンもgrepで受け入れられるはずです。ありがとうございました。
QList<Nmap_result> ans;
QFile file(path);
if(!file.open(QFile::ReadOnly|QFile::Text))
{
exit(1);
}
QString text = file.readAll();
QRegExp reg(QRegExp::escape(".*"));
reg.indexIn(text);
qDebug()<<reg.capturedTexts().join("|")<<endl<<reg.captureCount()<<endl;
申し訳ありませんが、エスケープを使用しないでください。しかし、次のように変更すると:
QString text = file.readAll();
qDebug()<<text<<endl;
QRegExp reg("[0-9]");
//reg.indexIn(text); //first bind expr test
reg.exactMatch(text); //second bind expr test
qDebug()<<reg.capturedTexts().join("|!!!!!|")<<endl<<reg.captureCount()<<endl;
私が使う
reg.indexIn(text);
この文字列を正規表現にバインドするには、数値を返しますが、次の expr を使用すると
reg.exeacMatch(text);
私は何も得ません。