【shell脚本】匹配函数的正则表达式

摘要:
自己写了一个统计代码中的函数以及函数个数的正则表达式:grep'('filename.c|grep')'|grep-v';'|grep'^[a-z]|[A-Z]'原理:1.分析函数的语法特点:函数实现部分的代码,所在行没有分号,因此,使用grep-v';'过滤掉有分号的行;函数实现部分可能有返回值声明,因此,使用grep'^[a-z]|[A-Z]',获取以字母开头的行;函数实现部分肯定有括号,因此

自己写了一个统计代码中的函数以及函数个数的正则表达式:

grep '(' filename.c | grep ')' | grep -v ';' | grep '^[a-z]|[A-Z]'

原理:

1.分析函数的语法特点:

  • 函数实现部分的代码,所在行没有分号,因此,使用grep -v ';'过滤掉有分号的行;
  • 函数实现部分可能有返回值声明,因此,使用grep'^[a-z]|[A-Z]',获取以字母开头的行;
  • 函数实现部分肯定有括号,因此使用grep'(' filename.c | grep')'

缺点:

1.不能匹配以空白字符开头的函数实现;

2.不能匹配形参不在同一样的函数实现;

总结:

正则表达式是针对某种书写格式或者规律进行匹配的方法,它采用的是穷举法,因此只能尽量地去覆盖到所有的书写格式或规律,但是不能保证覆盖到全部,故我们应该根据我们目标格式去书写正则表达式,不必太过于追求完美,只要能达到目标就行^_^

参考文献:

[1].鸟哥的Linux私房菜-基础篇关于shell脚本的介绍,http://vbird.dic.ksu.edu.tw/linux_basic/0340bashshell-scripts.php

免责声明:文章转载自《【shell脚本】匹配函数的正则表达式》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇jquery中的过滤操作form表单提交时选择性传值到后台下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

CentOS日常维护及常用脚本

[root@192-16.x.x xiewenming]# curl myip.ipip.net 当前 IP:42.62.x.x 来自于:中国 北京 北京 联通/电信 www.17ce.com cdn解析网站测试 如果遇到 -bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8...

web shell

介绍: 为什么文件上传存在漏洞 上传文件时,如果服务器代码未对客户端上传的文件进行严格的验证和过滤,就容易造成 可以上传任意文件的情况,包括上传脚本文件(asp、aspx、php、jsp 等格式的文件)。 ·危害 非法用户可以利用上传的恶意脚本文件控制整个网站,甚至控制服务器。这个恶意的脚本 文件,又称之为 webshell,也可将 webshell 脚本...

七 、linux正则表达式

为处理大量的字符串而定义的一套规则和方法 1)linux正则表达式以行为单位处理 2)alians grep = “grep –color=auto”,让匹配的内容显示颜色 3)注意字符集,export LC_ALL=C [root@pyrene ~]# alias grep='grep --color=auto' [root@pyrene ~]# exp...

JQuery 限制文本输入只能输入数字(可自定义正则表达式)

var JVerify ={ role: { number: /[0-9/]/, decimal: /[0-9./]/, code: /[0-9A-Z]/}, Verify: function() { for (var prop inJVerify.role) { $("[role^='" +...

Jmeter认知(一)

1.解释什么是jmeter?   jmeter是一款java开源工具,用于性能负载测试。它旨在分析和衡量web应用程序和各种服务的性能和负载功能行为。 2.说明jmeter的工作原理?   jmeter就像一群将请求发送到目标服务器的用户一样。它收集来自目标服务器的响应以及其他统计数据,这些统计数据通过图形或表格显示应用程序或服务器的性能。 3.说明可以在...

Apache Kylin远程代码执行漏洞复现(CVE-2020-1956)

Apache Kylin远程代码执行漏洞复现(CVE-2020-1956) 简介 Apache Kylin 是美国 Apache 软件基金会的一款开源的分布式分析型数据仓库。该产品主要提供 Hadoop/Spark 之上的 SQL 查询接口及多维分析(OLAP)等功能。 Apache Kylin 中的静态 API 存在安全漏洞。攻击者可借助特制输入利用该漏...