php+替换html字符,PHP的字符串替换HTML标签

您可以用$2替换/\^([1-7])([^\^]+)/,然后根据需要更改CSS中的颜色。

粘贴到你的CSS文件:

.quake-colour-1 {

color: red;

}

.quake-colour-2 {

color: lime;

}

.quake-colour-3 {

color: yellow;

}

.quake-colour-4 {

color: blue;

}

.quake-colour-5 {

color: cyan;

}

.quake-colour-6 {

color: magenta;

}

.quake-colour-7 {

color: white;

background-color: silver;

}

,代码:

$string = '^1Flo^2wer^3Po^4wer';

$html = preg_replace('/\^([1-7])([^\^]+)/', '$2', $string);

echo $html;

?>

,输出:

FlowerPower

或者,你可以用做直列的CSS:

class QuakeColour {

private static $colours = array(

1 => 'red',

2 => 'lime',

3 => 'yellow',

4 => 'blue',

5 => 'cyan',

6 => 'magenta',

7 => 'white'

);

private static function Replace($matches) {

return '' . $matches[2] . '';

}

public static function Parse($string) {

return preg_replace_callback('/\^([1-7])([^\^]+)/', 'QuakeColour::Replace', $string);

}

}

$string = '^1Flo^2wer^3Po^4wer';

var_dump(QuakeColour::Parse($string));

?>

其输出

string(144) "FlowerPower"

Regex的尸检:

\^字面^字符。需要转义为^是一个正则表达式字符。

([1-7])捕获组从1位数的匹配是不^字符的字符捕获组匹配7

([^\^]+),重复1次或更多次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值