Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将带括号的字符串替换为用HTML H1标记包装的字符串_Php_Regex - Fatal编程技术网

Php 将带括号的字符串替换为用HTML H1标记包装的字符串

Php 将带括号的字符串替换为用HTML H1标记包装的字符串,php,regex,Php,Regex,我认为这可能是一个相当常见的问题,但我在之前回答的所有问题中都没有找到匹配项 如果我有这样一个字符串: [我们的故事]敏捷的棕色狐狸跳过了懒惰的狗。[我们的 [分析]不管怎样 想用str替换括号中的字符串,那么我该怎么做呢?这类似于在此SO窗口中实现{}代码选项。您使用所谓的反向引用。在此实例中,\1表示正则表达式模式的括号部分 $string = preg_replace('/\[(.*)\]/', '<h1>\1</h1>', $string) $string=pr

我认为这可能是一个相当常见的问题,但我在之前回答的所有问题中都没有找到匹配项

如果我有这样一个字符串:

[我们的故事]敏捷的棕色狐狸跳过了懒惰的狗。[我们的 [分析]不管怎样


想用
str
替换括号中的字符串,那么我该怎么做呢?这类似于在此SO窗口中实现{}代码选项。

您使用所谓的反向引用。在此实例中,\1表示正则表达式模式的括号部分

$string = preg_replace('/\[(.*)\]/', '<h1>\1</h1>', $string)
$string=preg\u replace('/\[(.*)\]/','\1',$string)

您使用所谓的反向引用。在此实例中,\1表示正则表达式模式的括号部分

$string = preg_replace('/\[(.*)\]/', '<h1>\1</h1>', $string)
$string=preg\u replace('/\[(.*)\]/','\1',$string)

perl风格的原始regexp替换:
s/\[(.*)\]/\1/g
perl风格的原始regexp替换:
s/\[(.*)\]/\1/g
请不要标记问题标题。你能告诉我们你试过什么正则表达式吗,如果有的话?我自己没有试过任何正则表达式,因为我不知道如何在保留其内部内容的同时只替换字符串中的[]。不过,我对正则表达式不是很在行,我知道可能有一些方法可以通过使用它们来实现这一点。如果我在标题中加了个标签,我没有思考。请不要在你的问题标题上加标签。你能告诉我们你试过什么正则表达式吗,如果有的话?我自己没有试过任何正则表达式,因为我不知道如何在保留其内部内容的同时只替换字符串中的[]。不过,我对正则表达式不是很在行,我知道可能有一些方法可以通过使用它们来实现这一点。同位语如果我在标题中添加了一个标记,我就不会思考了。\\1`肯定只需要一个
\`就可以了,因为它在一个文本(单引号)字符串中?另一方面,
[
]
可能需要引号。。。看到那里的
/
我也有点惊讶,但PHP从来都不是很一致……我认为任何字符都可以用于此目的,
#
~
/
是最常用的,我不知道这是否与PHP有关……嗯,第一次没用,但现在已经编辑好了,很有魅力:)谢谢大家!当然,
\\1`只需要一个
\`就可以了,因为它在一个文本(单引号)字符串中?另一方面,
[
]
可能需要引号。。。看到那里的
/
我也有点惊讶,但PHP从来都不是很一致……我认为任何字符都可以用于此目的,
#
~
/
是最常用的,我不知道这是否与PHP有关……嗯,第一次没用,但现在已经编辑好了,很有魅力:)谢谢大家!