- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个 QString“mystring”,它是从这个 shell 命令的返回值中捕获的:
df /storage/sdcard0/
捕获的字符串是:
Filesystem Size Used Free Blksize
/storage/sdcard0/ 5.5G 3.9G 1.6G 4096
我将 QString 转换为 QStringList:
QStringList list=mystring.split(QRegExp("\\s"));
int i = list.count();
但是,当我检查列表时:
for( int a = 0; a < i; a = a + 1 )
qDebug() << list[a];
"Filesystem"
""
"Size"
""
"Used"
""
"Free"
""
"Blksize"
""
"/sdcard/"
""
"5.5G"
""
"3.9G"
""
"1.6G"
""
"4096"
""
""
为简洁起见,我省略了一堆“”。如果我使用相同的拆分输入的字符串完美无缺。
QString mystring = "This is a sentence with words"
qDebug 显示:
"This"
"is"
"a"
"sentence"
"with"
"words"
如何阻止将这些“”添加到 QStringList 中?这可以用不同的 QRegExp 纠正吗?
最佳答案
查看 QString::split(const QRegExp &rx, SplitBehavior behavior = KeepEmptyParts) const
有一个可选参数 SplitBehavior
允许您指定如何处理空的部分。如果您保留默认 QString::split() 将保留空白部分。要跳过,您需要将其设置为 QString::SkipEmptyParts
。
因此将您的拆分更改为以下内容:
QStringList list=mystring.split(QRegExp("\\s"),QString::SkipEmptyParts);
关于c++ - QRegExp 未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41710357/
在我正在进行的项目中,我需要制作一个 QStringList在所有 QRegExp 中捕获其中 2 个的 except:第一个和另一个,取决于其他一些参数。 直接的方法是使用 QRegExp::cap
我对 QRegExp 类没有任何问题,但现在我有了一个。我的代码 QRegExp re("d class=\\.green\\.>([+,0-9]+)[.0-9]+[.0-9]++0.1069.769
我必须从qmake 项目文件中提取单行注释。规则很简单:注释以 # 符号开头,以换行符 \n 开头。所以我阅读了一些关于 QRegExp 的文档,并编写了这样的代码来打印 qmake 文件中的所有注释
我试图在回调函数中将字符串与 QRegExp 匹配。我正在使用 Qt 的 C++ 实现。我写了一个形式的正则表达式:Atmospheres.(\\d+).(latitude|longitude|rad
我正在开发一些 Qt 应用程序,其主窗口 由QPlainTextEdit 子类日志窗口 组成,用于输出事件。我有三种类型的消息: 信息消息,表示一个以[INFO]子串开头的QString 警告信息,表
我想将所有不包含这些字符“”、“=”的字符串与 QRegExp (Qt) 匹配。使用以下正则表达式,这是行不通的: "^[^>、=]).*$ 关于c++ - QRegExp 不符合预期,我们在Sta
我正在尝试使用正则表达式解析这些字符串,但我认为我的正则表达式语句不正确。 我得到一个字符串,每当它有换行符和回车符时,它们必须分成两个字符串。字符串具有以下格式 [CharSize][Inverte
我有一个由其他人制作的应用程序,我需要修复它。 View 上有一个图表和一个用于过滤图表的文本框,但过滤器不起作用。出于某种原因,QRegExp 找不到任何东西。 我正在使用 QT5.12.1 和 V
使用 Qt 框架的类,我们如何从字符串中删除换行符、回车符和多个空格。 输入: A quick fox run over the lazy dog 输出: A quick fox
我正在努力创建一个用于匹配字符串 (??) 的 QRegExp(即:一个左括号、两个问号和一个右括号,这应该是一个单独的词,所以在此之前和之后可以是空格、制表符、换行符),我想到的最接近的是 QReg
我正在尝试从此文本中提取“246”: Responsible: John Doe Number: 246 Date: 24-12-2005 使用 QRegExp,模式: (?:Number: )\d+
我正在解析一些字符串。如果我遇到类似“Foo(bar)”的东西,我想提取“Foo”和“bar” 如何使用 QRegExp 来实现? 最佳答案 首先,如果您使用的是 Qt 5,那么最好使用 QRegul
我有一个 QString“mystring”,它是从这个 shell 命令的返回值中捕获的: df /storage/sdcard0/ 捕获的字符串是: Filesystem
我有一个字符串。例如: QString myString = "Today is Tuesday"; 要求是:当用户键入一个字符串时,如果该字符串包含在myString中,那么myString中的那部
我正在为 QLineEdit 编写一个正则表达式检查器,我正在使用 QRegExp。 我已经写了一个 int 值检查器: QRegExp *expression_ = new QRegExp("^(0
我想像使用 QRegExp 一样过滤命令 /path/to/executable --long-parameter -s /path/which/has/a/space/and/a/dash/\ -e
我不知道如何使用 QRegExp。我正在尝试从 QString 中删除选定的字符,但不知道如何将其写为正则表达式,从未使用过这些字符 :( 我想删除所有换行符、回车符、|、¦、¶ 和 §。 谢谢 Ps
我的程序从命令行获取配置。命令行是这样的:“mapPath=Some_Path_Over_Here\npluginsPath=Other_Path_Over_Here\n”请注意中间和最后的“\n”。
我想知道/有一个 qregexp,它可以从一行中提取所有整数,但如果数字位于评论部分则停止提取 For Example { 20,100,0X0},/*this line contains 2
我需要验证在 qlineedit 中输入的文本是否具有正则表达式的形式,我尝试使用这个: void MainWindow::checkReg( QLineEdit& mail, const QChec
我是一名优秀的程序员,十分优秀!