Возвышенный регистр изменения фрагмента, а также замена подчеркивания пробелами в зеркальном тексте

У меня есть несколько фрагментов для создания элементов формы в возвышенном тексте 2 для лезвия.

Чтобы сделать фрагменты более подходящими, я хотел бы добавить функциональность для преобразования регистра в зеркальном тексте в регистр заголовка, а также для разделения слов с пробелами вместо подчеркивания.

Это фрагмент моего фрагмента;)

{{ Form::label('$1', '${1/\b(\w*)\b/\u\1/g}') }}

Прямо сейчас, когда я печатаю в позиции $1, текст зеркала преобразуется в регистр заголовка.

Таким образом, результат в блейд-документе может быть, например:

{{ Form::label('password', 'Password') }}

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

Итак, вместо этого:

{{ Form::label('password_confirmation', 'Password_confirmation') }}

Я хочу закончить с этим:

{{ Form::label('password_confirmation', 'Password Confirmation') }}

2 ответа

Решение

{{ Form::label('$1', '${1/^(\w)|(_(\w))/(?1:\u\1:)(?2: \u\3:)/g}') }}

Sublime Text использует Boost регулярные выражения, которые поддерживают условные выражения.

<snippet>
    <content><![CDATA[
<div class="form-group">
    {!! Form::label('${1:text}', '${1/(^|_)(.)/$1\u$2/g}:') !!}
    {!! Form::text('${1:text}', null, ['class' => 'form-control']) !!}
</div>
]]></content>
<!-- {!! Form::label('${1:text}', '${1/_/\ /-/g}:') !!} -->
<tabTrigger>textfield</tabTrigger>

Вышесказанное приближается, но не совсем. Это заглавная буква после подчеркивания. Закомментированная строка заменяет подчеркивание пробелами... Я просто не могу понять, как объединить их оба:/

Другие вопросы по тегам