正则表达式(notepad++实战运用)

<1.运用场景,契约文档到实体类转变>

    某公司有一份契约,如下

    

   开发人员需要根据契约写出对应的实体类,当参数较多是,所开发的时间就比较多,这时候我们可以通过notepad++,用正则表达式进行替换

   操作步骤

   ①复制契约具体参数到notepad++

   

   ②写一个正则表达式,使之可以匹配到任意一行  

(?i)(?s)^([a-z]+)\s+\[?([a-z0-9\<\>\!]+)\]?\s+(.*?)$

     快捷键CTR+F ,弹出Replace窗口 ,在Find what 输入正则表达式,测试一下如图

    

③假如我们要替换这种格式,如图


写一个要替换后的正则表达式:

/** \3 */\r\nprivate \2 \1;

在 replace with 输入要替换的正则表达式,测试一下


只需要把替换后内容复制粘贴到新建的类文件就可以了,就不用自己一个个手写了,当契约较多的时候就会节省很多开发时间,而且参数不会写错。

效果展示完,接下来就来了解一下正则表达式吧

<2.了解正则表达式>

  定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

  语法:

?i : 匹配时不区分大小写
?s : 单行模式,表示更改.的含义,使它与每一个字符匹配(包括换行 符\n)
?m : 多行模式,表示更改^和$的 含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。(在此模式下,$的 精确含意是:匹配\n之前的位置以及字符串结束前的位置.)   
^  : 一行的开始
$  : 一行的结束
.     : 任意字符类
[abc] : 包含a、b和c的任何字符(tong a|b|c)
[^abc]: 除a、b和c的任何字符
\s    : 空白符
\S    : 非空白符
\d    : 数字[0-9]
\D    : 非数字[^0-9]
\w    : 词字符[a-zA-Z0-9]
\W    : 非次字符
1 贪婪型            勉强型         占有型        如何匹配
2 X?                X??           X?+          一个或零个X
3 X*                X*?           X*+          零个或多个X
4 X+                X+?           X++          一个或多个X
5 X{n}              X{n}?         X{n}+        恰好n次X
6 X{n,}             X{n,}?        X{n,}+       至少n次X
7 X{n,m}            X{n,m}?       X{n,m}+      X至少n次,且不超过m次

解析:

(?i)(?s)^([a-z]+)\s+\[?([a-z0-9\<\>]+)\]?\s+(.*?)$

(?i) 不区分大小写
(?s) 当行模式
^   一行开始
([a-z]+)   一个或多个英文字符,第一个小括号表示第一个组 \1
\s+  一个或多个空格
\[?  0个或者一个[ 
([a-z0-9\<\>]+)  :一个或者多个字母数字,尖括号  \2
\]? 0个或1个]
\s+ 一个或多个空格
(.*?) 勉强型0个或多个任意字符  \3
 
 /** \3 */\r\nprivate \2 \1;
 \r :换行






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值