需要一个正则表达式来修改第二个匹配项并忽略第一个和最后一个
Need a regex to modify a second match and ignore the first and last
库上下文,使用也可以使用正则表达式的 MarcEdit。
我需要这个:
=773 \$tEtudes inuit$x0701-1008Vol. 44 1-2, p. 53-84
改成这样:
=773 \$tEtudes inuit$x0701-1008Vol. 44, no. 1-2, p. 53-84
问题是,本例中的 44 和 1-2 是会从一本书更改到另一本书的数字,我正在构建命令以使其自动化。
我尝试着重将 44 和 1-2 之间的 space 更改为 ',不。 ' 与 \s 但它显然改变了所有 spaces 个字符。
添加',没有。 ' 很简单,因为它有一个不同的框,但我无法专注于第二个 space 而忽略第一个和最后一个,并且还保留前后的每个字符。
谢谢你的帮助,我 looking/trying 一整天了!
MarcEdit exemple
如果正则表达式实现支持向前看,您可以要求此 space 后跟一个范围和一个逗号:
查找:\s(?=\d+-\d+,)
替换:, no.
库上下文,使用也可以使用正则表达式的 MarcEdit。
我需要这个:
=773 \$tEtudes inuit$x0701-1008Vol. 44 1-2, p. 53-84
改成这样:
=773 \$tEtudes inuit$x0701-1008Vol. 44, no. 1-2, p. 53-84
问题是,本例中的 44 和 1-2 是会从一本书更改到另一本书的数字,我正在构建命令以使其自动化。
我尝试着重将 44 和 1-2 之间的 space 更改为 ',不。 ' 与 \s 但它显然改变了所有 spaces 个字符。
添加',没有。 ' 很简单,因为它有一个不同的框,但我无法专注于第二个 space 而忽略第一个和最后一个,并且还保留前后的每个字符。
谢谢你的帮助,我 looking/trying 一整天了!
MarcEdit exemple
如果正则表达式实现支持向前看,您可以要求此 space 后跟一个范围和一个逗号:
查找:\s(?=\d+-\d+,)
替换:, no.