我的字符串是包含[hotkey]
形式的一些“热键”。例如:
"This is a sample string [red] [h1]"
当我用php函数处理这个字符串时,我想函数输出原始字符串,如下所示;
<font color='red'><h1>This is a sample string</h1></font>
我想使用此功能纯粹是为了方便一些打字。我可以使用字体标签或div或其他什么,让我们不要进入。关键是这个;热键将导致原始字符串被包装到
中<something here>original string<and something there>
因此该函数首先需要确定是否有任何热键。这很简单;只需检查是否存在[
然后我们需要处理字符串以确定存在哪些热键,并进入关于要部署哪些包装器的biz逻辑。
最后我们将不得不从热键中清除原始字符串并返回结果。
我的问题是,是否有一个正则表达式可以使这个更有效地发生,然后我计划实现该函数的以下解析方法。
第1步
使用[
分隔符
第2步
通过每个数组元素来查看是否存在结束]
并且它形成一个已定义的热键,如果是,则执行必要的操作。
显然,这种方法不使用任何正则表达式。我想知道正则表达式在这里是否有帮助。或者,你可能建议做任何更好的方法吗?
答案 0 :(得分:0)
如果[
和]
是唯一需要担心的分隔符,则可以使用strtok
答案 1 :(得分:0)
我不会说英语,但我看到了你的例子:
"This is a sample string [red] [h1]"
<font color='red'><h1>This is a sample string</h1></font>
如果我是你:
$red = substr( $chaine, strpos($chaine, '['), strpos($chaine, ']') );