精华内容
下载资源
问答
  • matlab提取字符串一部分
    千次阅读
    2021-04-29 09:33:50

    刚想截取一个matlab字符串中间的一段字符,网上搜了一下,发现strfind这个函数是matlab用来查找字符串中的字符的。

    help strfind得到的结果:

    strfind Find one string within another.

    K = strfind(TEXT,PATTERN) returns the starting indices of any

    occurrences of the string PATTERN in the string TEXT.返回在这个字符串中所有出现过的位置

    strfind will always return [] if PATTERN is longer than TEXT.如果没有目标字符串则返回空矩阵

    Examples

    s = 'How much wood would a woodchuck chuck?';

    strfind(s,'a')    returns  21

    strfind('a',s)    returns  []

    strfind(s,'wood') returns  [10 23]

    strfind(s,'Wood') returns  []

    strfind(s,' ')    returns  [4 9 14 20 22 32]

    看它的例子发现这个函数很简单,我把我的例子也贴出来:

    clear all; close all; clc;

    HOGpath='D:\mycode\graduation_project_0403\occlusion\Cir\DATA_list_Circle_hog_data.txt';

    indfir=max(strfind(HOGpath,'\'));

    indlas=strfind(HOGpath,'.');

    xlyb=HOGpath(indfir+1:indlas-1);截取了最后一个‘\’和‘.’之间的字符串。

    更多相关内容
  • 方法: caseFileName = 'E:\test\test.txt'; nameList = strsplit(caseFileName,'\'); nameTmp = char(nameList(length(nameList))); %分割之后是cell类型,需要转换为char类型 fileName = nameTmp(1:length...

    方法一:

     caseFileName = 'E:\test\test.txt';
     nameList = strsplit(caseFileName,'\');
     nameTmp = char(nameList(length(nameList)));
     %分割之后是cell类型,需要转换为char类型
     fileName = nameTmp(1:length(nameTmp)-4);  
     % fileName 结果为test
    

    方法二:

    我使用的是方法二

     caseFileName = 'E:\test\test.txt';
    [pathstr,name,suffix]=fileparts(caseFileName); 
    % pathstr 结果为 E:\test ;name 结果为test; suffix 结果为.txt
    
    
    展开全文
  • MATLAB-字符串

    2021-10-19 16:37:40
    MATLAB-字符串字符串的生成字符串的函数字符串的判断 字符(Characters)可以构成字符串 (Strings),或字符数组(character array)。 字符串是被视为个行向量(row vector)。 字符串中的每个字符(含...

    • 字符(Characters)可以构成一个字符串 (Strings),或字符数组(character array)。
    • 一个字符串是被视为一个行向量(row vector)。
    • 字符串中的每一个字符(含空格),以其 ASCII 码的形式存放于行向量中,是该字 符串变量的一个元素(element)。

    字符串的生成

    Matlab 用「单引号」来界定一个字符串:

    stringname=‘the content of the string’

    字符串可以由单引号创建,如果字符串内部包含单引号,则需要在单引号位置输入两个连续的单引号,否则系统报错。

    1、直接创建

    在这里插入图片描述

    2、字符串合成

    • 可以使用方括号“[ ]”直接连接多个字符串变 量,得到一个新字符串变量。

    在这里插入图片描述

    字符串的操作

    字符串的转换函数汇总

    函数名作用/返回内容
    size返回字符串规格
    length计算字符串变量的长度
    abs字符串到ASCII转换
    dec2hex十进制数到十六进制字符串的转换
    fprintf将格式化的文本print
    hex2dec十六进制字符串转换成十进制数
    hex2num十六进制字符串转化成IEEE浮点数
    int2str整数转化成字符串
    lower字符串小写
    num2str数字转化成字符串
    setstrASCII转换成字符串
    sprintf用格式控制,数字转换成字符串
    sscanf用格式控制,字符串转换成数字
    str2mat字符串转换成一个文本矩阵
    str2num字符串转换成数字
    str2double字符串转换成double
    upper字符串大写

    1、显示

    字符串的显示:直接显示和利用disp函数显示
    在这里插入图片描述

    2、执行字符串

    字符串的执行:利用eval函数执行字符串,同python的eval函数,去掉字符串的引号使其成为可执行语句。
    在这里插入图片描述

    3、字符串的判断class/ischar

    class 或 ischar 指令: 可以用来判断一个变量的类 型或它是否为字符串变量。

    • class(), 返回括号内数据类型
    • ischar(),若不是字符串,则返回0.

    字符串是一个ASCII码的字符数组,因此与普通数组一样, 字符串也可以形成矩阵。但是这些行必须具有相同数目的列数。
    在这里插入图片描述

    使用char函数可以创建长度不一致的字符串矩阵。char 函数自动将所有字符串的长度设置为输入字符串中长度的 最大值;
    在这里插入图片描述

    在从数组中提取字符串时,可以利用deblank函数自动删 除char函数添加的空格;
    在这里插入图片描述

    字符串的运算

    运算函数汇总

    函数名作用函数名作用
    strcat横向连接字符串strvcat纵向连接字符串
    strcmp字符串比较strncmp比较字符串的前n个字符
    findstr字符串查找strjust字符串对齐
    strmatch字符串匹配strrep字符串查找与替换
    strtok选择字符串中的部分blanks创建由空格组成的字符串
    deblank删除字符串结尾的空格ischar判断变量是否为字符串
    iscellstr判断字符串单元数组stringsMATLAB字符串句柄
    isspace判断是否空格 ,是则返回1,否则返回0isletter判断字符串的字符是否是字母 ,是则返回1,否则返回0

    字符串的比较:strcmp, strncmp,Matlab运算法则

    字符数组进行比较时,比较的是ASCII码值。返回 结果为一个数值向量,元素为对应字符比较的结果。

    strcmp(str1,str2): 比较字符串str1和str2是否相同,若相 同返回1,否则返回0;当所比较的两个字符串是单元字符数 组时,返回值为一个列向量,元素为相应行比较结果。

    strncmp(str1,str2,n): 比较字符串str1和str2的前n个字符 是否相同,若相同返回1,否则返回0。当所比较的是两个单元数组 时,返回值为列向量,元素为相应行的比较结果。

    当两个字符串拥有相同的维数时,可以利用 MATLAB运算法则(==, ~=, <, >, <=, >=)比较两个字符串。

    字符串的查找和替换

    字符串的查找函数:findstr, strmatch, strrep, strtok

    findstr(str1,str2)

    用于在一个字符串中查找子字符串,执行时系统首先判断两个字符串的长短,然后在长的字符串中检索短的子字符串。 返回位置。
    在这里插入图片描述

    sterep(str1,str2,str3)

    将字符串str1中的所有子字符串str2替换为str3。
    在这里插入图片描述

    strmatch(str1,str2)

    寻找str1是否匹配str2的开头部分字符串, 返回str1在str2中匹配的位置
    在这里插入图片描述

    strmatch(‘str’, STRS,’exact’)

    寻找str1是否完全匹配str2,返回 str1在str2中匹配的位置
    在这里插入图片描述

    strtok()

    选取字符串的一部分,简单用法为strtok(str)
    在这里插入图片描述

    展开全文
  • 仅作为学习记录,大佬请跳过。...博主提取字符’#‘和’‘之间的数据 【注意,提取的不包括‘和‘#’之间的数据】 步骤: 1、extractBetween——(extractBetween得到的是cell型数据) 2、cell2mat——c...

    仅作为学习记录,大佬请跳过。

    bluetoothread='#-0.115000*-0.205000##-0.115000*-0.175000##-0.115000*-0.155000#;
    

    博主提取字符’#‘和’‘之间的数据 【注意,提取的不包括‘和‘#’之间的数据】

    ——————————————————————————————
    博主发现extractBetween函数在matlab2016a及之前的版本还不支持,最好是用matlab2017a以上的版本才能使用该函数。

    ——————————————————————————————

    步骤:
    1、extractBetween——(extractBetween得到的是cell型数据)
    2、cell2mat——cell转换成char 注意! 需要一个一个循环进行转char,然后一个一个的char转换成num,最后再将每个num规整到一个数组里
    3、str2double

    代码如下:

    clear;close all;clc;
    bluetoothread='#-0.115000*-0.205000##-0.115000*-0.175000##-0.115000*-0.155000#;
    
    s=extractBetween(bluetoothread,'*','#')
    s=s'
    j=1;
    for i=1:length(s)
        smat=cell2mat(s(i))
        snum=str2double(smat)
        snumm(j)=snum
        j=j+1;
    end
    

    在这里插入图片描述

    运行后如图:
    在这里插入图片描述

    ———————————————————————————————————
    参考
    传送门
    在这里插入图片描述
    传送门2
    在这里插入图片描述

    展开全文
  • 使用matlab自带的split函数:以下划线“_”为间隔将原来字符串拆分为两部分。 >> str = '11_12'; >> list = split(str,'_') list = 2×1 string 数组 "11" "12" >> new_str = list(2,...
  • Matlab 实现特定位置的字符串的截取

    千次阅读 2021-12-17 10:13:52
    , strsplit函数,功能强大 save_path = ‘H:\Experiment\Img’; smap_list = ‘P1_front_img.jpg’; cell_str = strsplit(smap_list,’_’); %分成三段: ‘P1’ ‘front’ ‘img.jpg’ smap_name = cell_str{1,1...
  • MATLAB 附带了系列字符串函数。 但是,某些有用的函数尚未包含在 MATLAB 版本中。 受 Java、Ruby 和 Python 等其他高级语言的启发,我开发了字符串操作函数,以便更方便地处理字符串。 这里给出了个简要的...
  • find_nums 查找字符串中的所有数字并返回个数值数组 nums,其中包含找到的所有数字。 通过将标志指定为 1、2、3 或 4,程序将分别查找:复数、实数、整数或货币(美元)。 还返回匹配字符串的元胞数组。 元胞数组...
  • strread(不推荐)从字符串中读取格式化数据不推荐使用 strread。请改用 textscan。语法A = strread('str')[A, B, ...] = strread('str')[A, B, ...] = strread('str', 'format')[A, B, ...] = strread('str', 'format...
  • 例如我想裁切100_10.jpg中的_和.中间的那个10,可以用该语句 regexp('100_10.jpg', '(?<=_).*(?=\.)', 'match') 其中.在正则表达式里得用.来转义表示。
  • 字符串 https://ww2.mathworks.cn/help/matlab/characters-and-strings.html 创建字符向量 通过将字符序列括在单引号中来创建个字符向量。 chr = 'Hello, world' chr = 'Hello, world' 字符向量为 char 类型的...
  • matlab 字符串替换

    万次阅读 2017-02-13 21:15:36
    先看题目,来自佐治亚理工学院题干说的很...解决思路:1、将字符串中的单词提取出来,放在个元组中 2、匹配,此处用strncmp而不用strcmp,是因为被分割的最后个单词会带标点符号,如果用strcmp比较会将标点考虑在
  • Matlab读取记事本中的字符串数据

    千次阅读 2021-03-20 16:01:37
    1.读取name.txt中所有字符串,共有400行,存成cell [name]=textread('name.txt','%s',400); 2.循环取出 。name:400*1 cell for i=1:400 str_name=name{i}; img=imread(str_name) %... end ...
  • matlab定位特定字符串
  • 提取手写体字符特征中如何更好的截取图像中字符区域是很重要的事。下面就给出种截取字符区域的方法,以使字符在图像中占据更多的位置A=imread(filename);subplot(2,2,1);imshow(A);[N,M]=size(A);% A= bwmorph(A...
  • matlab提取关键字

    2021-04-19 00:46:03
    MEX 文件的目录列表 type 列出 M 文件 lookfor 通过 help 条目搜索关键字 which 定位函数和文件 Demo 运行演示程序 Path 控制 MATLAB 的搜索路径 管理变量和工作......MEX 文件的目录列表 列出 M 文件 通过 help ...
  • Matlab常用操作1、MATLAB删除字符串中任意字符2、MATLAB 一二三维矩阵之间转换3、MATLAB常见取整函数 1、MATLAB删除字符串中任意字符 构建字符串:s % 删除空格 s(isspace(s)) = [];%去除空格 %删除字符串中...
  • matlab字符串数组、元胞数组提取数字背景示例代码 背景 最近需要整理个图片测试集,其中需要将图片与对应主观评价分对号。由于部分序列集中图片顺序混乱,因此需要将图片的序号提取出来,网上有单字符串提取数字...
  • 由于 matlab 在读取个文件夹里面的所有图像的时候,不是按照顺序读取的,而是按照上图的顺序读取,所以在提取标签的时候有点困难,下面就是提取括号里面的数字,并保存在个新的元胞数组里面,即为图像的 label ...
  • matlab 提取文本文件的数据,分门别类存储在数组当中。
  • 给定个数组,如何让matlab生成个这个数组中的个随机数?x=[102030];x(randi(length(x)));其中randi(length(x))生成从1~(x的长度)这几个自然数中随即的个数让这个数作为下标,就可以从x中随即选取个数x...
  • Matlab中字符和字符串

    2020-06-19 11:29:04
    字符数组和字符串数组用于存储 MATLAB®中的文本数据。 字符数组是个字符序列,就像数值数组是个数字序列一样。它的个典型用途是将短文本片段存储为字符向量,如c = 'Hello World'。 字符串数组是文本...
  • 这是两年半前大三时所写的代码和任务,如今看来其实很幼稚,当时得出的结论是1、在学习像R、matlab这种语言,一定要查明实现这种功能是否有类似函数解决2、R语言的处理数据类型时,涉及大量数据转换细节,只有多用...
  • 首先,利用dos,提取文件名为txt文件 ...然后,利用matlab提取数字 clc;clear; A=importdata('list.txt'); for i=1:length(A) a=num2str(A{i}); s=a(isstrprop(a,'digit')); ss(i,1)=str2num(s); end ...
  • Simulink 字符串

    2021-04-22 12:20:42
    Simulink 字符串当您要传递和操作文本时,可以在多个...Simulink® 字符串MATLAB® 字符串兼容。Simulink 字符串是内置的信号数据类型。它们在 Simulink Editor 中显示为 "strN"(例如,最大长度为 N 个字符的字符...
  • matlab之取出小数部分

    千次阅读 2021-11-08 19:07:58
    基本思想: 取出整数部分, 再把数字减去整数部分, 就可以得到小数部分. num=3.5; decimal=num-floor(num);
  • 请问一下在matlab中怎样读取含有字符数据文件,这个是2 数据文件的一部分 ion s py pz px dxy dyz dz2 dxz dx2 tot 1 0.007 0.000 0.000 0.000 0.003 0.000 0.003 0.000 0.000 0.014 2 0.004 0.000 0.000 0.000 0....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,444
精华内容 1,777
关键字:

matlab提取字符串一部分

matlab 订阅