Qt之正規表示式 QRegExp

2021-05-22 15:49:07 字數 1089 閱讀 5808

qt裡對大名鼎鼎的正規表示式有很好的支援,使用qregexp類,你可以非常快的完成對文字的驗證、資料提取、替換。qt的sdk包裡還提供了regexp的gui小工具,方便你對正規表示式的驗證。

本文在qt4.5.3下驗證通過。

你可以使用qregexp::exactmatch來判斷乙個字串是否符合乙個pattern。 

void

testregexmatch()

你可以利用利用正規表示式從乙個字串裡提取特定的字段或資料。例如,你可以用以下**從"a=100"裡提取"a"和"100"。

void

testregexcapture()

} 你可以把字串中匹配的字串替換成"一般字串"

qstring s 

=  " a=100

" ;s.replace(qregexp(

" (.*)=

" ), 

" b=

" );

qdebug() 

<<

s;                          

//  b=100

或是把字串中匹配的字串替換"提取的字串"

qstring s 

=  " a=100

" ;s.replace(qregexp(

" (.*)=(.*)

" ), 

" //1//2=//2

" );  

//  /1 is rx.cap(1), /2 is rx.cap(2)

qdebug() 

<<

s;                                  

//  a100=100

沒有python的"""或是c#的@。標準的正規表示式因為出現一些特殊字元,在c/c++**裡使用時,必須進行轉換。例如:"(/s+)/s*=/s*(/s*)"必須轉換成"(//s+)//s*=//s*(//s*)"

qt的sdk裡包含乙個很幫的gui工具,可以方便我們進行這類轉換並測試你的表示式。在linux下,它的路徑是/usr/local/trolltech/qt-4.5.3/examples/tools/regexp/regexp

Qt之正規表示式 QRegExp

qt裡對大名鼎鼎的正規表示式有很好的支援,使用qregexp類,你可以非常快的完成對文字的驗證 資料提取 替換。qt的sdk包裡還提供了regexp的gui小工具,方便你對正規表示式的驗證。本文在qt4.5.3下驗證通過。你可以使用qregexp exactmatch來判斷乙個字串是否符合乙個pat...

Qt之正規表示式 QRegExp

qt裡對大名鼎鼎的正規表示式有很好的支援,使用qregexp類,你可以非常快的完成對文字的驗證 資料提取 替換。qt的sdk包裡還提供了regexp的gui小工具,方便你對正規表示式的驗證。本文在qt4.5.3下驗證通過。你可以使用qregexp exactmatch來判斷乙個字串是否符合乙個pat...

QT 正規表示式QRegExp

qt 正規表示式qregexp sf2gis 163.com 2015年1月10日 qregexp是以perl的正規表示式為基礎發展來的。可以使用簡單的萬用字元匹配,或者純字元匹配,也可以使用正規表示式匹配。使用setpatternsyntax 可以切換不同的匹配模式。使用exactmatch 驗證...