我需要编辑一个包含数百个条目的bibtex
数据库。实际上我需要做的是替换键或括号之间的大写字母,例如:{A}
。我有成千上万的。我的第一个想法是使用{{
搜索Ctrl + D
个事件,但这限制了我的搜索仅限于初始事件,而另一个仍然存在。
我的想法是替换{#}
(其中#是外卡字符,我用来抽象地表示任何字母),仅用于#
;但由于#可能是字母表中的任何字母,我无法使用Ctrl + D
这么简单。我知道正则表达式(实际上我知道它们存在,但不知道它们是如何使用的,我从未使用过)。我一直在寻找有关Sublime Text 2的信息,但我找不到足够的基础知识。
有人可以解释我该怎么做,或者向我展示一些有关新手正则表达式的有用解释吗?
答案 0 :(得分:2)
使用 Ctrl + H 打开搜索和替换,启用正则表达式。
如果大写字母之间只有一个大写字母的实例,并且您希望删除大括号。
Find What: \{[A-Z]\}
Replace With:
^^ Replace with Empty String
如果您只想用不同的值或空字符串替换大写字母,请保留大括号。
Find What: (?<=\{)[A-Z](?=\})
Replace With:
^^ Replace with Empty String or value of choice
如果您想保留大写字母但仅删除大括号:
Find What: \{([A-Z])\}
Replace With: \1
答案 1 :(得分:1)
使用以下正则表达式匹配{}
中存在的所有大写字母。将匹配的字符替换为您想要的字符串。
[A-Z](?=[^{}]*})
在Sublime文本2中,选择Find->Replace
以通过正则表达式进行替换。