我有一个带有正则表达式过滤器的大文件。我正在将它从一个系统转换为另一个系统,但它需要一些修改。
现在它看起来像这样:
{
"chatpattern" "MY REGEX FILTER"
}
但首先我要在{
和chatpattern
之间添加一行,方法是在搜索和替换功能中执行以下操作:
search: {
replace: { \r "TEXT" \r
问题就出现了,在第一行后我希望"TEXT"
增加1,所以它会像:
{
"TEXT1"
"chatpattern" "MY REGEX FILTER"
}
{
"TEXT2"
"chatpattern" "MY REGEX FILTER"
}
{
"TEXT3"
"chatpattern" "MY REGEX FILTER"
}
这可能吗?
答案 0 :(得分:0)
这是一个完成工作的perl oneliner:
perl -pi.back -e 's/\{/"{\ntext".++$i/e;' in.txt
替换是在适当的位置完成的。> br>
原始文件在处理前保存到in.txt.back
将\n
更改为您想要的换行符。
in.txt:
{
"chatpattern" "MY REGEX FILTER"
}
{
"chatpattern" "MY REGEX FILTER"
}
{
"chatpattern" "MY REGEX FILTER"
}
in.txt之后:
{
text1
"chatpattern" "MY REGEX FILTER"
}
{
text2
"chatpattern" "MY REGEX FILTER"
}
{
text3
"chatpattern" "MY REGEX FILTER"
}