国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Qt之QString】去除“字符“或替換“字符“小技巧

這篇具有很好參考價(jià)值的文章主要介紹了【Qt之QString】去除“字符“或替換“字符“小技巧。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

去除字符

在Qt中,可以使用以下函數(shù)來(lái)去除字符串中的字符。

  1. QString &remove(int i, int len):刪除字符串中從索引位置i開(kāi)始長(zhǎng)度為len的字符。
  2. QString &remove(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive):刪除字符串中所有與字符c相匹配的字符。cs參數(shù)指定是否區(qū)分大小寫(xiě),默認(rèn)為區(qū)分大小。
  3. QString &remove(const QString &s, Qt::CaseSensitivity cs = Qt::CaseSensitive):刪除字符串中所有與字符串s相匹配的子字符串。cs參數(shù)指定是否區(qū)分大小寫(xiě),默認(rèn)為區(qū)分大小寫(xiě)。
  4. inline QString &remove(const QRegExp &rx):刪除字符串中所有與正則表達(dá)式rx匹配的子字符串。
  5. inline QString &remove(const QRegularExpression &re):刪除字符串中所有與

下面是示例代碼:
方法1

QString str = "Hello, World!";
str.remove(5, 1);

方法2

QString str = "Hello, World!";
str.remove(',');

方法3

QString str = "Hello, World!";
str.remove(",");

方法4

QString str = "Hello, World!";
str .remove(QRegExp(","));

方法5

QString str = "Hello, World!";
str .remove(QRegularExpression(","));

在上述代碼中,我們使用QString &remove()函數(shù)去除某字符。

替換字符

如果要替換字符,可以調(diào)用replace()函數(shù)進(jìn)行替換,或者使用正則表達(dá)式來(lái)匹配并刪除指定的字符。

  1. QString &replace(int i, int len, const QString &after):將字符串中從索引i開(kāi)始的長(zhǎng)度為len的字符替換為指定的字符串a(chǎn)fter,并返回修改后的字符串。
  2. QString &replace(QChar before, QChar after, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中所有與指定字符before相匹配的字符替換為指定字符after,并根據(jù)cs參數(shù)指定的寫(xiě)敏感性進(jìn)行匹配。
  3. QString &replace(const QChar *before, int blen, const QChar *after, int alen, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中與給定字符數(shù)組before相匹配的內(nèi)容替換為字符數(shù)組after中的內(nèi)容,并根據(jù)cs參數(shù)指定的大小寫(xiě)敏感性進(jìn)行匹配。
  4. QString &replace(QLatin1String before, QLatin1String after, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中所有與指定Latin1String類型的before相匹配的內(nèi)容替換為相應(yīng)的Latin1String類型的after,并根據(jù)cs參數(shù)指定的大小寫(xiě)敏感性進(jìn)行匹配。
  5. QString &replace(QLatin1String before, const QString &after, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中所有與指定Latin1String類型的before相匹配的內(nèi)容替換為指定的字符串a(chǎn)fter,并根據(jù)cs參數(shù)指定的大小寫(xiě)敏感性進(jìn)行匹配。
  6. QString &replace(const QString &before, QLatin1String after, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中所有與指定字符串before相匹配的替換為相應(yīng)的Latin1String類型的after,并根據(jù)cs參數(shù)指定的大小寫(xiě)敏感性進(jìn)行匹配。
  7. QString &replace QString &before, const QString &after, Qt::CaseSensitivity cs =::CaseSensitive):將字符串中所有與指定字符串before相匹的內(nèi)容替換為指定的字符串a(chǎn)fter,并根據(jù)cs參數(shù)指定大小寫(xiě)敏感性進(jìn)行匹配。
  8. QString &replace(QChar c, const QString &after, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串中所有與指定字符c相匹配的字符替換為指定的字符串a(chǎn)fter,并根據(jù)cs參數(shù)指定的大小寫(xiě)敏性進(jìn)行匹配。
  9. QString &replace(QChar c, QLatin1String, Qt::CaseSensitivity cs = Qt::CaseSensitive):將字符串所有與指定字符c相匹配的字符替換為相應(yīng)Latin1String類型的after,并根據(jù)cs參數(shù)指定的大小寫(xiě)感性進(jìn)行匹配。
  10. QString &replace(const QRegExp &rx, QString &after):將字符串中所有與給定正則表達(dá)式rx配的內(nèi)容替換為指定的字符串a(chǎn)fter,并返回修改后的字符串。
  11. QString &replace(const QRegularExpression &re, const QString after):將字符串中所有與給定正則表達(dá)式re匹配的內(nèi)容替換為指定的字符串a(chǎn)fter,并返回修改后的字符串。

例如:

QString str = "1,2,3,4,5";
// ,替換成.
str.replace(",", "."); 
// 1替換成6
str.replace("1", "6"); 

或者使用正則表達(dá)式:

QString str = "1,2,3,4,5";
// 1替換成6
str = str.replace(QRegularExpression("[1]"), "6");

以上代碼中使用replace()函數(shù)結(jié)合QRegularExpression對(duì)象對(duì)字符串進(jìn)行正則匹配和替換操作。

需要注意的是,QString是不可變類型,即每次對(duì)字符串進(jìn)行修改都會(huì)返回一個(gè)新的字符串。因此,在處理大量字符串時(shí),建議使用QStringBuilder類或修改原始數(shù)據(jù)結(jié)構(gòu)以避免頻繁的字符串拼接和復(fù)制操作。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-723741.html

到了這里,關(guān)于【Qt之QString】去除“字符“或替換“字符“小技巧的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Qt之GB2312\GBK字符與QString轉(zhuǎn)換

    在中國(guó)國(guó)內(nèi)與其它數(shù)據(jù)接口通訊時(shí),經(jīng)常會(huì)遇到GB2312GBK格式的字符,這時(shí)需要進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換 否則只有ASCII碼正常,而其它就是亂碼。 在main.c文件下配置UTF-8 QString 為unicode碼,轉(zhuǎn)為GBK碼 將GB2312/GBK字符串轉(zhuǎn)化為QString

    2024年02月11日
    瀏覽(26)
  • Qt QByteArray如何轉(zhuǎn)QString

    要將QByteArray轉(zhuǎn)換為QString,可以使用QString的構(gòu)造函數(shù)或QString的fromUtf8()方法。 以下是兩種常用的方法: 1. 使用QString的構(gòu)造函數(shù): ```cpp QByteArray byteArray = \\\"Hello World\\\"; QString str(byteArray); ``` 2. 使用QString的fromUtf8()方法: ```cpp QByteArray byteArray = \\\"Hello World\\\"; QString str = QString::fromUtf8(

    2024年01月19日
    瀏覽(18)
  • 【Qt5】QString的成員函數(shù)trimmed

    【Qt5】QString的成員函數(shù)trimmed

    2024年1月19日,周五下午 QString 的 trimmed 方法是用于移除字符串兩端的空白字符(空格、制表符、換行符等)的方法。它返回一個(gè)新的字符串,該字符串是原始字符串去除兩端空白后的結(jié)果。 下面是一個(gè)簡(jiǎn)單的示例: 在這個(gè)示例中,originalString 包含前后有空格的字符串。通過(guò)

    2024年01月20日
    瀏覽(17)
  • 【Qt5】QString的成員函數(shù)chop

    【Qt5】QString的成員函數(shù)chop

    2024年1月19日,周五下午 QString 的 chop 方法用于從字符串的末尾移除指定數(shù)量的字符。這個(gè)方法會(huì)修改原始字符串,并返回 void。 下面是一個(gè)簡(jiǎn)單的示例: 在這個(gè)示例中,originalString 包含字符串 \\\"Chop me!\\\"。通過(guò)調(diào)用 chop(2) 方法,從字符串的末尾移除了兩個(gè)字符,修改了原始字符

    2024年01月20日
    瀏覽(53)
  • C++-QT-QString -CString -string 互轉(zhuǎn)

    C++-QT-QString -CString -string 互轉(zhuǎn)

    網(wǎng)上常用的函數(shù)在環(huán)境(VS2022? ATL包含QT庫(kù)的項(xiàng)目)中轉(zhuǎn)換不了。 std::string str = qstr.toStdString(); //不行 問(wèn)題: ? QString qsrc = \\\"asjdoag\\\"; string sdest; sdest = qsrc.toStdString();? 不行 ? 3.1包含目錄和庫(kù)目錄 3.2 頭文件和庫(kù)文件 示例代碼: https://download.csdn.net/download/aggie4628/88778435 ?

    2024年01月25日
    瀏覽(17)
  • 【Qt一坑】const QString 轉(zhuǎn)換 char * 可能的坑

    現(xiàn)在有一個(gè)這樣的需求,需要將const QString 轉(zhuǎn)換成 ?char * 而當(dāng)我這樣寫(xiě)時(shí): **這是由于:** str.toStdString().c_str()中toStdString()是一個(gè)臨時(shí)std::string變量,而c_str()是指向這個(gè)臨時(shí)std::string變量的字符串地址,所以傳給c時(shí)這個(gè)臨時(shí)std::string變量已經(jīng)被析構(gòu),其內(nèi)容是空,c_str()自然就是

    2024年02月16日
    瀏覽(16)
  • QT Creator上位機(jī)學(xué)習(xí)(三)QString及其相關(guān)控件介紹

    QT Creator上位機(jī)學(xué)習(xí)(三)QString及其相關(guān)控件介紹

    QSting類,用于處理字符串,進(jìn)行字符串和數(shù)字之間的轉(zhuǎn)化 轉(zhuǎn)換函數(shù): 1.數(shù)字轉(zhuǎn)字符串 其中setNum() 函數(shù)和number()函數(shù)使用了多個(gè)重載定義,可以處理各種類型的整數(shù)和浮點(diǎn)數(shù),處理整數(shù)的時(shí)候還可以指定進(jìn)制。 例如:數(shù)據(jù)轉(zhuǎn)化為指定進(jìn)制的字符串 2.字符串轉(zhuǎn)數(shù)字 轉(zhuǎn)換為整數(shù):

    2024年02月11日
    瀏覽(19)
  • VS2019+QT5.12.9環(huán)境下,調(diào)試QString無(wú)顯示解決

    VS2019+QT5.12.9環(huán)境下,調(diào)試QString無(wú)顯示解決

    1、搜索 qt5.natvis.xml 文件,路徑一般為C:UsersieskongAppDataLocalMicrosoftVisualStudio16.0_cb8bc8a7Extensionsoih0nd55.5jrqt5.natvis.xml,【建議使用Everything這個(gè)工具搜索] 2、復(fù)制到C:Program Files (x86)Microsoft Visual Studio2019EnterpriseCommon7PackagesDebuggerVisualizers目錄下并重命名為qt5.natvis即可(如果

    2024年02月09日
    瀏覽(25)
  • [QT編程系列-21]:基本框架 - QT常見(jiàn)數(shù)據(jù)結(jié)構(gòu):QString、QList、QVector、QMap、QHash、QSet、QPair詳解

    [QT編程系列-21]:基本框架 - QT常見(jiàn)數(shù)據(jù)結(jié)構(gòu):QString、QList、QVector、QMap、QHash、QSet、QPair詳解

    目錄 1 QString 2 QList 3?QVector 4?QMap 5?QHash 6 QSet 7?QPair QString是Qt中用于存儲(chǔ)和操作字符串的類。它提供了豐富的字符串處理方法和功能。 以下是QString的一些主要特點(diǎn)和常用操作: 創(chuàng)建QString對(duì)象: 獲取字符串內(nèi)容和長(zhǎng)度: 字符串比較和搜索: 字符串分割和連接: 字符串格式

    2024年02月16日
    瀏覽(50)
  • [QT編程系列-22]:基本框架 - QT常見(jiàn)數(shù)據(jù)結(jié)構(gòu):QString、QList、QVector、QMap、QHash、QSet、QPair快覽

    目錄 1. QT常見(jiàn)數(shù)據(jù)結(jié)構(gòu)概述 2. QList與QVector比較 3.?QPair和QMap比較 4. QT數(shù)據(jù)結(jié)構(gòu)與STL庫(kù)數(shù)據(jù)結(jié)構(gòu)比較 5. QT數(shù)據(jù)結(jié)構(gòu)與STL庫(kù)數(shù)據(jù)結(jié)構(gòu)性能比較 在Qt中,有幾個(gè)主要的數(shù)據(jù)結(jié)構(gòu)常用于處理和組織數(shù)據(jù),包括: QString: 用于存儲(chǔ)和操作字符串的類。QString是Qt中常用的字符串類型,提供

    2024年02月16日
    瀏覽(22)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包