我有以下正则表达式来捕获laravel项目中的翻译字符串:
(trans|trans_choice|Lang::get|Lang::choice|Lang::trans|Lang::transChoice|@lang|@choice)\(([\'"]([\/a-zA-Z0-9_-]+([.][^)\'"]+?)+)[\'"])(\s?.*,\s?.*)*?[\)\]];?
正则表达式将很高兴地捕获:
@lang('validation.invalid')
@lang('validation.invalid', ['field' => $field])
但是,在我引入换行符的那一刻
@lang('validation.invalid', [
'field' => $field
])
或两者之间的一对:
@lang('validation.invalid', [
'field' => $field,
'message' => $error->getMessage()
])
它不再以字符串为目标