一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 576万

在做项目中不可避免的会使用到一串字符串中的一段字符,因此常常需要截取字符串。

有两种方式可以解决这个问题:


方法一:QString分割字符串:

QString date=dateEdit.toString("yyyy/MM/dd");
QStringList list = date.split("/");//QString字符串分割函数

方法二:正则表达式分割字符串:

1、Orcale数据库:

1    Data='12345|耗子|男'
2    select regexp_substr (Data, '[^|]+', 1,1) into 用户ID from hdata;
3    select regexp_substr (Data, '[^|]+', 1,2) into 用户姓名 from hdata;
4 
5    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, int n = -1) const

参数:
position:指定截取字符串的起始位置(postion超出字符串长度时,返回null字符 )
n:指定截取字符串长度(自postion开始的可用字符串小于n,or n== -1,返回自position开始的全部字符串)

2.

1 std::basic_string::substr(size_type __pos, size_type __n) const
2 basic_string substr(size_type pos = 0, size_type count = npos);

功能:返回子字符串[pos, pos+cout];
当请求的substring超出字符串末尾or count == npos,返回的substring 为[pos, size()]

posted on   一杯清酒邀明月  阅读(33777)  评论(0编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示