2

"=" and"," を " " に置き換えた QString があります。ここで、特定の文字列のすべての出現を削除する正規表現を書きたいと思います。その直後に、1 ~ 2 文字の長い数字を含む括弧が続きます。例: 「mat(1) = 5、mat(2) = 4、mat(3) = 8」は「5 4 8」になります。

だから、これは私がこれまで持っているものです:

text = text.replace("=", " "); 
text = text.replace(",", " "); 
text = text.remove( QRegExp( "mat\([0-9]{1,2}\)" ) );

正規表現が正しくありません。どうすれば修正できますか? ありがとう!

4

1 に答える 1

7

C++ 文字列リテラルのバックスラッシュをエスケープする必要があります。

text = text.remove( QRegExp( "mat\\([0-9]{1,2}\\)" ) );
于 2012-09-07T18:07:30.767 に答える