Matlab读取文本中的数值,浮点值的正则表达式

举个例子

 对于这样一部分是文本一部分是数值,可以先试用imortdata()这个函数,这样可以直接读取文本部分与下半部分数值部分。

至于想要提取文本中的数值,尤其是浮点数还有正负符号之类的,比如第4行的文本,可以这么写。

    data1 = importdata(file1_path);
    s = data1.textdata;

    s_1 = regexp(s{4},'(\-?)\d+(\.?)\d*','match');
    lat_eqk = str2num(s_1{1});
    lon_eqk = str2num(s_1{2});
    depth = str2num(s_1{3});

结果就是有三个元素的元组

提取完成 

MATLAB正则表达式(Regular Expressions)是一种强大的文本搜索和处理工具,可以在字符串匹配特定的模式。 MATLAB正则表达式可以使用以下函数进行处理: 1. regexp:用于在字符串查找正则表达式的匹配项,并返回匹配项的位置和子字符串。 2. regexprep:用于在字符串查找正则表达式的匹配项,并将其替换为指定的字符串。 3. regexpi:与regexp函数类似,但是不区分大小写。 4. regexprep:与regexprep函数类似,但是不区分大小写。 5. regextranslate:将MATLAB字符串转换为正则表达式字符串。 在MATLAB正则表达式的语法与其他语言正则表达式语法类似。以下是一些常用的正则表达式语法: 1. ^:匹配输入字符串的开始位置。 2. $:匹配输入字符串的结束位置。 3. .:匹配除换行符以外的任何单个字符。 4. *:匹配前面的字符零次或多次。 5. +:匹配前面的字符一次或多次。 6. ?:匹配前面的字符零次或一次。 7. []:表示一个字符集,匹配其的任何一个字符。 8. [^]:表示一个反向字符集,匹配未在其的任何一个字符。 9. ():表示一个子表达式,可以在表达式引用。 例如,以下代码将查找字符串所有以大写字母开头的单词,并将它们替换为“Word”: str = 'This is a Test String'; newStr = regexprep(str, '\<([A-Z][a-z]*)\>', 'Word'); 输出结果为: newStr = 'Word is a Word Word'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

空花缱绻三分

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值