Qt之QString字串分割 擷取

2021-08-19 04:11:37 字數 1429 閱讀 7173

在做專案中不可避免的會使用到一串字串中的一段字元,因此常常需要擷取字串。

有兩種方式可以解決這個問題:

方法一:qstring分割字串:

qstring date=dateedit.tostring("yyyy/mm/dd");

qstringlist list = date.split("/");//qstring字串分割函式
方法二:正規表示式分割字串:

1、orcale資料庫:

data='12345|耗子|男'

select regexp

_substr

(data, '[^|]+', 1,1) into 使用者id from hdata;

select 

regexp_substr

(data, '[^|]+', 1,2) into 使用者姓名 from hdata;

select 

regexp_substr

(data, '[^|]+', 1,3) into 性別 from hdata;

2、
string s = "ab\ncd\nef\\ngh";

string v = s.split("[\n]|([\\\\]n)");

方法三:(字串擷取:qstring與std::string均有現成的處理函式)

1)

qstring

qstring::mid(int

position,

intn

=-1)

const

引數:

position:指定擷取字串的起始位置(postion超出字串長度時,返回null字元

)

n:指定擷取字串長度(自postion開始的可用字串小於n,or

n==-1,返回自position開始的全部字串)

2)

std::basic_string::substr(size_type

__pos,

size_type

__n)

const

basic_string

substr(size_type

pos=

0,size_type

count

=npos);

功能:返回子字串[pos,

pos+cout];

當請求的substring超出字串末尾or

count

==npos,返回的substring

為[pos,

size()]

QString 擷取分割字串

qt中qstring中提供兩種簡單易行的分隔字串的函式,section和split 1.qstring seciton qstring section提供了四種過載函式,如下 qstring section qchar sep,int start,int end 1,sectionflags fla...

Qt入門 字串類QString

qstring是unicode字元的集合,它是qt api中使用的字串類。qstring的成員是qchar,qchar是乙個16位unicode字元類。大多數編譯器把它看作是乙個unsigned short。qstring和c標準中的字串不同,它不以 0 結尾,相反,qstring可以嵌入 0 字元...

Qt中的字串類QString

qt下面,字串都用qstring,確實給開發者提供了方便,想想vc裡面定義的各種變數型別,而且函式引數型別五花八門,經常需要今年新那個型別轉換 qt再使用第三方開源庫時,由於庫的型別基本上都是標準的型別,字串遇的多的就是char 型別 在qt下怎樣將qstring轉char 呢,需要用到qbytea...