主题文本:
$types[CNT_ANONS] = t('Announcement', 'content_type');
我需要一些查找和替换表达式才能获得结果:
$types[CNT_ANONS] = Yii::t('content_type', 'Announcement');
因此,将“t”替换为“Yii::t”,函数的参数应该反过来。
注意:表达式应该是“perl”语法(我在 sublime 文本编辑器中使用它)。请注意主题文本中可能出现“Yii::t”。
主题文本:
$types[CNT_ANONS] = t('Announcement', 'content_type');
我需要一些查找和替换表达式才能获得结果:
$types[CNT_ANONS] = Yii::t('content_type', 'Announcement');
因此,将“t”替换为“Yii::t”,函数的参数应该反过来。
注意:表达式应该是“perl”语法(我在 sublime 文本编辑器中使用它)。请注意主题文本中可能出现“Yii::t”。
你可以试试
Search : t\('([^']+)',\s'([^']+)'\);
Replace: Yii::t('\2', '\1');
尝试:
$data = '$types[CNT_ANONS] = t(\'Announcement\', \'content_type\');'; $res = preg_replace('@\$([^\s]+?)(\s+?)=(\s+?)t\((\'|")(.+?)(\'|"),(\s*?)(\'|")(.+?)(\'|")(.*?)\);@sim', "\$$1$2=$3Yii::t($8$9$10, $4$5$6$11);", $data); // ^_______________^----finding var // ^________________^----first argument // ^________________^----second argument