zoukankan      html  css  js  c++  java
  • 用MATLAB实现字符串分割

    strsplit更好用,用法:

    strsplit(strtrim(sprintf('  ds   hs dssd        ')))

    以下转载

    Matlab的字符串处理没有C#强大,本身又没有提供OO特性,需要依赖别的手段完成这项任务。
    我们在这里借助正则表达式函数regexp的split模式。一般语法:
    S = regexp(str, char, 'split')

    其中str是待分割的字符串,char是作为分隔符的字符(可以使用正则表达式)。分割出的结果存在S中。
    以下面这样一串字符为例
    Hello Nocturne Studio
    首先去除首尾多余的空字符:(deblank是删除尾部的空字符,包括 , , blank, etc.)
    str = strtrim(str)

    例1:设这几个字符串是以制表符分隔的,可以这样来做:
    S = regexp(str, ' ', 'split')
    例2:设这些字符串是以一个或多个空格分隔的,可以用正则表达式来描述:
    S = regexp(str, 's+', 'split')
    这样,S(1)=’Hello’,S(2)=’Nocturne’,S(3)=’Studio’。

    注意,上面得到的结果S是一个cell型变量,它的每个元素如S(1)仍然是cell型的,只能用来display,不能直接用来进行字符串操作(比如获取其中的某个字符),使用需要执行一次:
    s1 = char(S(1))

    这样的s1才是一个真正的字符串,可以进行后续的操作。

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    微信公众号:  共鸣圈
    欢迎讨论,邮件:  924948$qq.com       请把$改成@
    QQ群:263132197
    QQ:    924948

    良辰美景补天漏,风雨雷电洗地尘
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  • 相关阅读:
    iOS中使用nil NULL NSNULL的区别
    Xcode常用快捷键总结
    (求租仓库)navigationController .navigationBar 的属性设置
    imageNamed 与 initWithContentsOfFile 区别
    iOS-Senior10-多线程(子线程创建)
    iOS-setValue和setObject的区别
    iOS-Senior8-网络之进阶
    iOS-Senior7-数据请求
    iOS-Senior6-数据解析(JSON)
    iOS-Senior6-数据解析(XML)
  • 原文地址:https://www.cnblogs.com/welhzh/p/3550673.html
Copyright © 2011-2022 走看看