Недавно я увидел команду замещения, где автор /
заменил ее !
следующим образом::s!abc!ABC!g
Я попытался найти некоторую документацию по этому использованию, но я не смог найти ничего уместного. Поэтому я попытался поэкспериментировать сам и еще раз не смог понять реальную разницу между этими двумя знаками. Вот что я нашел:
- Не возможно смешивать
!
и/
в команде. Например:s!abc/ABC
не удается. - Это может быть полезно, чтобы
!
избежать экранирования/
в шаблоне. Например, если я хочу заменить</
на,%
я могу использовать:%s!</!%!g
вместо:%s/<\//%/g
. - Кажется, что в некоторых случаях некоторые регулярные выражения не будут работать
/
и работать должным образом,!
но, поскольку я на самом деле не эксперт по регулярным выражениям, я не уверен в этом.
Поэтому мой вопрос прост: в чем преимущество использования !
замещающей команды и когда я должен решить использовать ее вместо /
?