也许这对我来说太迟了,但我试图用PHP中的正则表达式替换2个字符串之间的字符。替换字符串之间的字符
例字符串:
other | text [tag]text|more text|and more[/tag] end | text
我的目标是与<br/>
[tag]
和[/tag]
之间更换|
。
这个试过了,看来它是不是很简单,但:
/<td>(\|)<td>/gsi
搜索了一下,但不能做出与我找到的东西答案。
希望能对你有所帮助,谢谢
也许这对我来说太迟了,但我试图用PHP中的正则表达式替换2个字符串之间的字符。替换字符串之间的字符
例字符串:
other | text [tag]text|more text|and more[/tag] end | text
我的目标是与<br/>
[tag]
和[/tag]
之间更换|
。
这个试过了,看来它是不是很简单,但:
/<td>(\|)<td>/gsi
搜索了一下,但不能做出与我找到的东西答案。
希望能对你有所帮助,谢谢
首先,发现里面有什么[tag]
S,然后找到管道。 PHP 5.3:
$result = preg_replace_callback('/\[tag\](.+?)\[\/tag\]/i', function($match) {
return str_replace('|', '<br />', $match[1]);
}, $str);
很难理解你想要做什么。你是否想要替换发生在给定html标签的两次出现之间的字符_ | _的每个出现?如果是这样,是否保证只有两次出现的标签(或者可能有3,4等...)? – jahroy 2012-04-13 23:23:52
@jahroy如果我正确地读了这个,是的,它是 – trembon 2012-04-13 23:27:13