我有几个片段用于在刀片的崇高文本2中创建表单元素。
为了使代码片段更充分,我想添加功能,将镜像文本中的大小写转换为Title Case,并用空格而不是下划线分隔单词。
这是我的代码段中的一个片段;)
{{ 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') }}
答案 0 :(得分:7)
{{ Form::label('$1', '${1/^(\w)|(_(\w))/(?1:\u\1:)(?2: \u\3:)/g}') }}
Sublime Text使用支持conditionals的Boost正则表达式。
答案 1 :(得分:0)
<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>
以上情况接近,但并不完全存在。它将下划线后的字母大写。注释掉的行用空格替换下划线...我只是无法弄清楚如何将两者结合起来:/