【发布时间】:2015-03-11 16:46:15
【问题描述】:
在搜索之前提出的问题后。我需要一些帮助来解决我的问题。我想做的可以是任何语言 Bash、Perl、Python 等。我刚刚开始使用 Bash 和 Perl。
我读了一个文本文件,然后我想编写一个脚本,如果我这样做了
- 给出行号。
- 脚本转到该行号并查看第一个括号。
- 搜索直到找到匹配的括号,同时忽略嵌套括号并输出中间的所有文本。
例如,如果有代码。
INPUT : 我给出行号(例如 60)作为输入
。 . .
//第60行
//convolving F
j=0;
while(j<N_sim)
{
Vect_F[j]=0;
for (k=0; ((k<N_col) & ((j-k)>=0)); k++)
Vect_F[j]+=F[i][k]*Vect_Up[j-k];
j++;
}
//adding the results to the y matrix
for (j=0; j < N_sim; j++)
y[j]+=Vect_F[j];
}
}
输出
. {
Vect_F[j]=0;
for (k=0; ((k<N_col) & ((j-k)>=0)); k++)
Vect_F[j]+=F[i][k]*Vect_Up[j-k];
j++;
. }
我应该遵循什么方法?
【问题讨论】:
-
您能否提供一个文本文件样本和所需的输出?
-
我认为您需要一个 .net 解决方案,因为它支持平衡组。
-
@stribizhev,使用 Perl 正则表达式可以通过多种方式完成,这还不包括 Text::Balanced。
标签: python regex bash perl text-extraction