我想在php应用程序中使用某种BB代码:如果你在两个“slashdots”(例如:To /.be/. or /.not/. to be!
)之间编写文本,它将显示为 italic 。
我目前正在使用以下模式:
preg_replace('/\/\.(.*)\/\./', '<i>$1</i>', $text)
但是对于该示例,它将返回To <i>be/. or /.not</i> to be!
而不是To <i>be</i> or <i>not</i> to be!
...
我也尝试使用负面预测断言,但它会抛出错误。
答案 0 :(得分:1)
使用非贪婪的匹配(问号):
preg_replace('/\/\.(.*?)\/\./', '<i>$1</i>', $text);