matlab读取正则找科学,MATLAB常用正则表达式记录

MATLAB正则表达式

一、正则表达式

正则表达式是一串用于定义某种模式的字符。在有些情况下(例如,在解析程序输入或处理文本块时),您通常会使用正则表达式在文本中搜索与该模式匹配的一组单词。

数据处理是matlab的长项,但是正则表达式在做一些不标准的excel数据处理等还是很有帮助的。

二、需要掌握的基础

元字符

元字符表示字母、字母范围、数字和空格字符。使用它们来构造广义的字符模式。

元字符就是对未知的一种替代

625cbe6299e8f1a65f9e3520850f1f8b.png

环顾断言

test='strxxx'; % 是一个字符串

% expr是表达式

环顾断言查找紧邻预期匹配项前后但并非该匹配项一部分的模式。

指针停留在当前位置,并且将放弃或不捕获对应于 test 表达式的字符。因此,前向断言可匹配重叠字符组。

环顾断言就是指定匹配范围

eac03380f990bc27d12861f4d9deb2a9.png

正则表达式

email = ‘[a-z_]+@[a-z]+.(com|net)’;

"+"是连接多个正则表达项

"[a-z_]“是匹配a-z的26个字母以及一个”_"符号

"\.“是指”."这个符号

"(com|net)"指"com"和"net"这两个字符串二选一

就这样,几个正则表达项任意随机(还是按自己的需求)组合在一起就构成了一个正则表达式

正则表达式的用途也就是两种:

匹配(提取) | regexp(区分大小写)、regexpi(不区分大小写)

替换(替换) | regexprep

三、常用实例

1、匹配(提取)

其中和关键的一个split,能解决大多数问题。

分割返回的是一个数组或者是cell,然后索引就可以直接使用。

我用的

%% 匹配

% 捕获字符向量中包含字母 x 的单词。

str = 'EXTRA! The regexp function helps you relax.';

expression = '\w*x\w*';

matchStr = regexp(str,expression,'match')

% 关键(很多时候这一个就够啦):使用 split 关键字在分隔符处拆分文本

str = 'She sells sea shells by the seashore.';

expression = '[Ss]h.';

[match,~] = regexp(str,expression,'match','split')

% 查找 dd-mmm-yyyy 形式的日期,包括日、月和年的标文。

str = 'Here is a date: 01-Apr-2020';

expression = '(\d+)-(\w+)-(\d+)';

mydate = regexp(str,expression,'tokens');

mydate{:}

% 查找指定字符串之间的内容

% \w* 是标识的一个单词,注意单词的分割

str = '缺少工资表的年份:2018、2019、2020-3000, 缺少考核表的年份: 1999、2008;';

expression = '(?<=:)\w*.*'; % \w*: 任意单字符 .:任何单字符 *:0次或连续多次

matchStr = regexp(str,expression,'match')

expression = '\w*.*(?=,)';

matchStr = regexp(matchStr{1},expression,'match')

%% 替换-只需要替换一下函数就行,方法基本和匹配一样

fcdf0a09807c76210a680945d9fcf821.png

2、替换

只需要替换一下函数就行,方法基本和匹配一样

标签:匹配,记录,正则表达式,MATLAB,str,regexp,expression,替换

来源: https://blog.csdn.net/qq_37832932/article/details/110127541

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/268672.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过JDBC进行简单的增删改查(以MySQL为例)

目录 前言&#xff1a;什么是JDBC 一、准备工作&#xff08;一&#xff09;&#xff1a;MySQL安装配置和基础学习 二、准备工作&#xff08;二&#xff09;&#xff1a;下载数据库对应的jar包并导入 三、JDBC基本操作 (1)定义记录的类&#xff08;可选&#xff09; (2)连接的获…

Windows Mobile 6.0下实现自绘多种状态按钮(Win32) 续

这篇文章是以前的补充&#xff1a; http://www.cnblogs.com/wangkewei/archive/2009/02/24/1397490.html 放在首页是想借助各位从事Windows Mobile本地代码开发的前辈们力量&#xff0c;把这方面的资料完善一下&#xff0c;我会总结更多有关这方面的文章。 1.原理介绍DRAWITE…

新书品读《三级网络技术预测试卷与考点解析》,欢迎拍砖、跟砖提建议。

新书品读&#xff1a;《三级网络技术预测试卷与考点解析》已正式出版上市&#xff0c;欢迎拍砖、跟砖提建议。第1章 考前预测试卷11.1 上午试题&#xff08;考试时间120分钟&#xff0c;满分100分&#xff09;1.1.1 笔试试卷一、选择题&#xff08;每小题1分&#xff0c;共60…

PHP外部引用样式,PHP引用外部css有什么好处

PHP引用外部css的好处有&#xff1a;1、网页处理速度会更快一些&#xff1b;2、可以防止一些电脑程度较低的使用者直接看到CSS语法&#xff1b;3、维护方便。PHP引用外部css有什么好处&#xff1f;php页面外部调用css样式表时有三处优点&#xff1a;第一个好处&#xff1a;网页…

基于消息与.Net Remoting的分布式处理架构

分布式处理在大型企业应用系统中&#xff0c;最大的优势是将负载分布。通过多台服务器处理多个任务&#xff0c;以优化整个系统的处理能力和运行效率。分布式处理的技术核心是完 成服务与服务之间、服务端与客户端之间的通信。在.Net 1.1中&#xff0c;可以利用Web Service或者…

centos7安装nginx和php,centos7安装nginx1.10和php7

安装nginx。1.首先在根目录下创建一个software文件夹用来存储下载的压缩包。2.然后cd跳转的software文件夹下&#xff0c;进行压缩包的下载wget -c https://nginx.org/download/nginx-1.10.1.tar.gz3.解压&#xff0c;然后跳转到解压的目录下tar -zxvf nginx-1.10.1.tar.gzcd n…

oracle恢复指定数据文件,Oracle特殊恢复-BBED修改某个数据文件头

Oracle数据文件头中的scn要与控制文件中的scn一致&#xff0c;数据库才可以open&#xff0c;在open过程中我们可以通过bbed来修改某个数据文件头的scn&#xff0c;来欺骗oracle&#xff0c;来open库。1、环境如下使用Oracle 11gR2进行测试&#xff0c;具体版本为11.2.0.4SYSlin…

Hyper-V和多处理器虚机

架构概述Hyper-V采用基于Hyperisor的架构&#xff0c;并且充分利用Windows驱动模型&#xff0c;以便提供广泛的硬件支持。Hypervisor可以把单个服务器划分为多个CPU和内存的容器。由于采用微内核架构&#xff0c;Hyper-V可以提供高效的分区间通信机制&#xff0c;并在此基础上搭…

Vue.js(2.x)之Class 与 Style 绑定

1、前面看数据绑定时还很困惑v-bind处理class时可以使用json格式的值&#xff0c;为什么换成id、href等其他属性就不行。看了下文档解释后明白了些&#xff1a; 2.对象语法主要有以下三种形式&#xff1a; 1&#xff09;直接在v-bind指令后使用键值对形式&#xff1a;键是否显示…