我试图在php中的preg_replace操作中理解正则表达式背后的逻辑,但我不明白。
我试图截取width="560"
之类的字符串,并将其替换为width="100%"
。
整数值自然不是常数,所以我不能使用简单的str_replace调用。
我尝试使用preg_replace("/(\d)/", "100%", $input_lines);
$input_lines = 'width="560"';
但我明白了:width="100%100%100%"
我遗漏了一些关于递归的东西。 任何线索?
EDIT 在社区回答之后,我必须在我的帖子中添加一些规范。
我要做的是使用youtube嵌入代码,如
<iframe width="560" height="315" src="https://www.youtube.com/embed/_qvp9a1x2UM" frameborder="0" allowfullscreen></iframe>
并用100%替换560,用计算值替换315
答案 0 :(得分:3)
答案 1 :(得分:0)
我不是php专家,但是当谈到正则表达式时:
preg_replace("/(\d*)/", "100%", $input_lines);
选择组中的所有数字。否则会创建3个不同的,因此用您的字符串替换。