最近写了一个统计插件的类的方法
import React, {PureComponent} from 'react'
import {
AAA,
BBB,
CCC,
DDD
} from 'react-native';
import {
MM,
KK,
} from 'aaa/bbb/cc'
import {
LL
} from 'aaa/bb/cc'
import { QQ } from 'aaa/bb/cc'
import BB from 'aa/dd/HH'
znscdbcnbnbv cnx
ncxvbhbcdhbchdbhbvhvbhfjbncjvnjcnj
jszcnjdscjdvnjcnjvnjvcnjvnj
jcnjdcnjvnjvnjsdhshcjdhcdjvnjvnjcvn
jncjvnjnvjcnvjvnjcjcdjhdhvdvhjvhnjcvnjn
jsbchdbsvhjbvjwhiwhkdhvjbvjbvjhbjxhbvjxbvjbvj
想要的结果是路径'aaa/bbb/cc'下import 和 from 中间的内容,这就要涉及到多行和单行的提取,结果类似这样:
MM
KK
LL
QQ
为了实现此功能,扫了一遍awk sed 英文文档,其中wak 多行处理语句是
awk '/import/,/from/{print $0}'
但是匹配路径,老是匹配不到aaa/bbb/cc,可能正则写法不对。和同事沟通了下,给了一种方案是多行先转化为单行试试,和LG折腾了好久,最后在https://stackoverflow.com/questions/57929159/using-pcregrep-to-grep-multiple-lines 找到了解决的方案。还给了wak 的写法。