正则表达式提取2个花括号之间的字符串

雅利安人

我有以下短代码:

亲爱的{{name}}

邀请您参加以下活动: {{event}}

问候, {{author}}

我有一个来自数据库的数组: $data

哪里:

$data['name'] = 'John Doe';
$data['event'] = 'Party yay!';
$data['author'] = 'Kehke Lunga';

我期望的输出:

尊敬的John Doe,

您受邀参加以下活动:派对!

问候,Kehke Lunga

另外,我还想执行类似的操作{{firstname||lastname}},即要么检查是否$data['firstname']设置了,否则应使用$data['lastname']但是,这是稍后阶段。

现在,我只想知道如何在2个花括号之间匹配文本。

谢谢

ilpaijin

对于第二项操作,您可能需要这样:

$str = "Dear {{name||email}}, You are being invited for the following event: {{event}}. Regards, {{author}}";

// $data['name'] = 'John Doe'; 
$data['email'] = '[email protected]'; 
$data['event'] = 'Party yay!'; 
$data['author'] = 'Kehke Lunga';

$pattern = '/{{(.*?)[\|\|.*?]?}}/';

$replace = preg_replace_callback($pattern, function($match) use ($data)
{
    $match = explode('||',$match[1]);

    return isset($data[$match[0]]) ? $data[$match[0]] : $data[$match[1]] ;
}, $str);

echo $replace;

基本上是通过编辑'$ pattern',然后在回调内部找到所需的正确逻辑。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式,提取字符串不在两个括号之间

来自分类Dev

正则表达式模式在花括号之间获取字符串

来自分类Dev

正则表达式提取2个文本之间的字符串-以()结尾

来自分类Dev

正则表达式提取字符串末尾括号之间的数字

来自分类Dev

正则表达式查找包含在两个括号之间的字符串

来自分类Dev

使用正则表达式提取2个字符之间的所有子字符串组合

来自分类Dev

正则表达式模式提取大括号之间的字符串,并排除大括号

来自分类Dev

在括号之间的数据中提取字符串忽略内部括号正则表达式python

来自分类Dev

Python 正则表达式:仅在花括号后面匹配字符串

来自分类Dev

仅提取两个正则表达式模式之间的字符串部分

来自分类Dev

仅提取两个正则表达式模式之间的字符串部分

来自分类Dev

提取两个正则表达式之间的字符串

来自分类Dev

正则表达式 - 用花括号括起来并用句点分隔的 2 个字符串的模式

来自分类Dev

正则表达式提取Java中两个表达式之间的字符串

来自分类Dev

正则表达式-提取两个表达式之间的字符串,仅获得最后的出现

来自分类Dev

Powershell正则表达式从日志文件中的行中提取圆括号之间的字符串

来自分类Dev

正则表达式提取两个斜杠之间的字符串和其中的指定字符串

来自分类Dev

使用正则表达式查找括号(包括括号)之间的特定字符串

来自分类Dev

正则表达式匹配括号和逗号之间的字符串,但存在多个括号

来自分类Dev

获取2个字符之间的字符串正则表达式

来自分类Dev

在字符串正则表达式busybox之间提取字符串

来自分类Dev

通过正则表达式提取字符串之间的特定字符串

来自分类Dev

在2个字符串之间的正则表达式中选择文本

来自分类Dev

在javascript中使用正则表达式获取两个大括号之间的所有字符串

来自分类Dev

PHP 正则表达式提取带引号和括号的子字符串

来自分类Dev

使用正则表达式提取不在方括号内的字符串模式

来自分类Dev

在字符串python正则表达式中的括号之间找到给定的单词

来自分类Dev

正则表达式以匹配括号之间的字符串

来自分类Dev

逗号或括号之间的正则表达式字符串,但不包含点

Related 相关文章

  1. 1

    正则表达式,提取字符串不在两个括号之间

  2. 2

    正则表达式模式在花括号之间获取字符串

  3. 3

    正则表达式提取2个文本之间的字符串-以()结尾

  4. 4

    正则表达式提取字符串末尾括号之间的数字

  5. 5

    正则表达式查找包含在两个括号之间的字符串

  6. 6

    使用正则表达式提取2个字符之间的所有子字符串组合

  7. 7

    正则表达式模式提取大括号之间的字符串,并排除大括号

  8. 8

    在括号之间的数据中提取字符串忽略内部括号正则表达式python

  9. 9

    Python 正则表达式:仅在花括号后面匹配字符串

  10. 10

    仅提取两个正则表达式模式之间的字符串部分

  11. 11

    仅提取两个正则表达式模式之间的字符串部分

  12. 12

    提取两个正则表达式之间的字符串

  13. 13

    正则表达式 - 用花括号括起来并用句点分隔的 2 个字符串的模式

  14. 14

    正则表达式提取Java中两个表达式之间的字符串

  15. 15

    正则表达式-提取两个表达式之间的字符串,仅获得最后的出现

  16. 16

    Powershell正则表达式从日志文件中的行中提取圆括号之间的字符串

  17. 17

    正则表达式提取两个斜杠之间的字符串和其中的指定字符串

  18. 18

    使用正则表达式查找括号(包括括号)之间的特定字符串

  19. 19

    正则表达式匹配括号和逗号之间的字符串,但存在多个括号

  20. 20

    获取2个字符之间的字符串正则表达式

  21. 21

    在字符串正则表达式busybox之间提取字符串

  22. 22

    通过正则表达式提取字符串之间的特定字符串

  23. 23

    在2个字符串之间的正则表达式中选择文本

  24. 24

    在javascript中使用正则表达式获取两个大括号之间的所有字符串

  25. 25

    PHP 正则表达式提取带引号和括号的子字符串

  26. 26

    使用正则表达式提取不在方括号内的字符串模式

  27. 27

    在字符串python正则表达式中的括号之间找到给定的单词

  28. 28

    正则表达式以匹配括号之间的字符串

  29. 29

    逗号或括号之间的正则表达式字符串,但不包含点

热门标签

归档