【发布时间】:2017-04-25 12:23:57
【问题描述】:
replace:
path: "{{ drupal.install_dir }}/{{ drupal.project_name }}/sites/default/settings.php"
regexp: '(\s+)(\'database\' => \'{{ drupal.database_name }}\',)$'
replace: '\1\2\n\1\'charset\' => \'utf8mb4\',\n\1\'collation\' => \'utf8mb4_unicode_ci\','
但是报错:
path: "{{ drupal.install_dir }}/{{ drupal.project_name }}/sites/default/settings.php"
regexp: '(\s+)(\'database\' => \'{{ drupal.database_name }}\',)$'
^ here
【问题讨论】:
-
错误内容在哪里?为什么不简单地将整个表达式用双引号括起来呢?而不是逃避单个的。
-
@techraf 我认为双引号不起作用(至少对我来说不是,我已经尝试过,所有示例都是单引号)。错误内容是我给你看的,只是一些垃圾。基本上说有语法错误。如果我翻转正则表达式并替换,则错误出现在替换中,就在转义单引号旁边