在String中查找多次自定义构建的短代码

时间:2014-11-03 11:06:15

标签: php regex preg-match shortcode

我正在建立一个基于测验的系统,用户可以通过在文本区域输入类似于短代码的内容来生成问题类型。该计划是能够将短代码转换为HTML。

以下是用户如何在文本区域内书写的示例:

  

这是一个问题

     

你叫什么名字? [问题类型="文字"问题-答案="麦克|麦克风|迈克尔"]

     

男性还是女性? [问题类型="广播"问题-答案="男性"可能-答案="男|女"名称="性别"]

     

你拥有多少辆汽车[问题类型="复选框"问题-答案=" 2"可能-答案=" 1 | 2 | 3 | 4"名称="汽车"]

用户添加'短代码'通过单击按钮,可以选择向属性添加值,例如问题答案等...这样可以节省他们编写任何代码的权限。

我想要做的是提交(在后台),将所有短代码转换为html输入。实际的转换不会成为问题,我遇到的问题是找到所有短代码的出现。

我尝试过使用:

preg_match_all(SOME_REG_EX, $question, $matches);
print_r($matches);

但是我没有得到任何有用的东西,可能是由于我的正则表达不正确,我尝试了各种正则表达式,但没有任何运气。

1 个答案:

答案 0 :(得分:0)

管理以找到我需要查找每个匹配项的正则表达式:

'/\[[^\[]*question[^\]]*\]/'

获得整个[question OTHER_ATTRIBUTES]短代码