Регулярное выражение: изменение части строки, начинающейся с символа - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь написать регулярное выражение, которое находит строки, начинающиеся с '@', находит определенный символ и заменяет его.Конкретно, я хочу найти такие строки, как:

@xxxxxx{yyy/zzz

и заменить это на

@xxxxxx{yyy_zzz

(xxxxxx, yyy и zzz не имеют /)

Iможет придумать следующее, которое начинается с начала строки и находит первое /

^(.*?)/(.*?)

, затем я могу изменить это с помощью

$1_$2

Но это поднимает больше строк с/ в них, и я хочу сосредоточить их на строках, начинающихся с @.Буду признателен за помощь.Я делаю это в Textmate, чтобы быть более конкретным.

Ответы [ 2 ]

0 голосов
/ 01 октября 2018

^(@.*?)\/(.*) получит @xxxxxx {yyy и zzz в группах 1 и 2 для @xxxxxx {yyy / zzz.Обратите внимание, что я сбежал.Возможно, вам придется изменить это в зависимости от используемого вами языка.

Я использовал веб-сайт ниже для своих заданий.Это может помочь вам в следующих регулярных выражениях.

ВЕБ-САЙТ : https://regex101.com/

0 голосов
/ 01 октября 2018

Не , будучи экспертом в Textmate, я надеюсь, что это сработает:

(?<=@.*?)\/

Это работает, если посмотреть сзади на знак '@', за которым следует любое количество любыхподписать и, наконец, слеш.Совпадение будет состоять только из косой черты, легко заменить совпадение с подчеркиванием.

...