检索代码中的纯英文注释

检索代码中的纯英文注释

  1. 问题分析
    (1)检索需要跨行
    (2)检索内容是包含\t\n\r和字符’0’-’~'之间的ascii码
    (3)检索工具使用grep(notepad++/source insight携带的正则式工具很难完成跨行匹配)
  2. 解决方法
    (1)修改linux编码为en_US,使用grep就不会匹配到中文,但可能出现乱码和误匹配
    (2)直接检索ascii码(推荐)
  3. 实施方法
    使用grep,并使用Perl正则式,其他流派正则式在书写上可能有一定差异。
    -P:使用Perl正则式
    -z:跨行匹配
    -o:只输出匹配到的内容
    -n:输出行号

(1)匹配ascii码正则式:

/**/型注释匹配:/\*[\t\n\r -.0-~]+\*/
//型注释匹配://[\t\n\r -~]+$

(2)多行纯英文注释检索(/**/型注释)

grep -Pzon "/\*[\t\n\r -.0-~]+\*/"

注:因受贪婪匹配的影响,所匹配的英文注释内容不包含’/'字符。
(3)单行纯英文注释检索(//型注释)

grep -Pn "//[\t\n\r -~]+$"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值