В Notepad ++ я хотел бы заменить все ссылки/цитаты ссылкой.заменить первые пробелы до последнего пробела после запятой только в круглых скобках
Е.Г., следующее:
Bla bla bla bla (van Author et al., 2015).
Bla bla bla (Authorone, Authortwo, & Authorthree, 2016).
Bla bla (Authorone & Authortwo, 2017).
должны стать:
Bla bla bla bla (vanAuthor2015).
Bla bla bla (Authorone2016).
Bla bla (Authorone2017).
Обратите внимание, что также может быть несколько ссылок в одной строке, но нет вложенных скобок.
На первом этапе я заменил (?<=\([a-z][a-z][a-z])\s
ничем, чтобы превратить первую цитату из (van Author et al., 2015)
в (vanAuthor et al., 2015)
. Это также будет работать для (von Author et al., 2015)
.
Пояснение:
\s
Удалить сингл белого пространства(?<=
, который следует\([a-z][a-z][a-z])
отверстие скобки и 3 букв нижнего регистра.)
близко positive lookbehind.
Однако я борюсь со вторым шагом. Как заменить первый пробел до последнего пробела после запятой \s.*,\s
только в круглых скобках? Я прочитал много сообщений под названием «регулярное выражение только в скобках», но решения, с которыми я столкнулся, похоже, не применимы к моему делу.
Try '(? \ (\ W +) (: \ s + (\ W +)) [^?)] * \ S (\ d + \)) '->' $ 1 $ 2 $ 3 '. –
@Wiktor безупречный! Вы хотите включить свой комментарий в ответ? – Flo
Да, всего через секунду –