Qt之QString字符串分割、截取

37 篇文章 1 订阅

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

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

    方法一: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, int n = -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()]


  • 21
    点赞
  • 105
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值