好的,所以我有一个输出一些文字的字符串。
〜Terraces
公寓设有两个大露台。起居室可通往主露台(30平方米),配有带6把扶手椅的大木桌和大型舒适的木制日光浴床。这里的景色令人惊叹,您可以欣赏到令人难以置信的海景,同时您还可以欣赏到位于Marbella后面的引人注目的La Concha的迷人景色。第二个露台(14平方米)可从厨房进入。
我唯一要做的就是将这样的 ~string 这样的模式转换为 string 。更专门去除〜,空格和使文字变粗。
我创建了这个函数:
function bold($var) {
$var = preg_replace('/~\s(.*?)/', '<strong>$1</strong>', $var);
return $var;
}
该函数删除〜但不会使文本变粗。为什么?更奇怪的是,如果我在强标签之间插入一些内容,我将以粗体显示该文本,然后是我想要取消标记的文本,即使它们是'重新使用相同的标签。
就像快速说明一样...... $ var在整个字符串中,就像上面例子中的那样。
答案 0 :(得分:1)
我相信你需要这个:
$var = preg_replace('/~\s*(\S+)/', '<strong>$1</strong>', $var);
答案 1 :(得分:0)
首先。 PHP是一种服务器端语言,因此为了使其变粗,您可能希望使用粗体标记回显HTML。
运行正则表达式后,为什么不这样做:
$var = '<strong>$var</strong>';
而不是尝试通过正则表达式完成所有操作?