修改 .bst 文件以删除卷页后的逗号

修改 .bst 文件以删除卷页后的逗号

我正在使用稍微修改过的澳大利亚科学杂志文件,出于某些原因我必须使用该文件,例如,在“单行”上输出参考书目。实际上,样式似乎在参考书目中的期刊页面后输出逗号:

[1] John, P., & Smith, F. K. 1979, ApJ, 234, 296, [2] ...

如果我尝试编辑该bst文件(对此我没有太多经验),我可以删除该部分的逗号:

FUNCTION {output.nonnull}
{ 's :=
  output.state mid.sentence =
    { ", " * write$ } % I can remove this comma here
    { output.state after.block =
        { add.period$ write$
          newline$
          "\newblock " write$
        }
        { output.state before.all =
            'write$
            { add.period$ " " * write$ }
          if$
        }
      if$
      mid.sentence 'output.state :=
    }
  if$
  s
}

但输出不仅会删除最后一个逗号,还会删除期刊名称后面的逗号:

[1] John, P., & Smith, F. K. 1979, ApJ234, 296 [2] ...

我怎样才能获得如下的输出?

    [1] John, P., & Smith, F. K. 1979, ApJ, 234, 296 [2] ...

相关内容