相关疑难解决方法(0)

如何替换字符串中的占位符?

不太确定如何说出这个问题,但我会举一个例子.

$string = 'Hey, $name. How are you?'; 
Run Code Online (Sandbox Code Playgroud)

当我发布这个字符串时,$name不会改变.我怎么能这样做,所以我可以把+name+它改成名字.我已经尝试过搜索但我不知道该搜索什么,所以我没有运气.它可能很简单,但我只是在消隐.谢谢

php

14
推荐指数
3
解决办法
2万
查看次数

PHP preg_match_all搜索和替换

我已经尝试了大约一百万个不同的正则表达式,我无法绕过这一个(不可否认,很多正则表达式都不在我的掌握之中).

在我的文本中,我有这样的变量:

{{$one}}
{{$three.four.five}}
{{$six.seven}}
Run Code Online (Sandbox Code Playgroud)

我有一个包含所有替换的数组('one'的索引是'one'等)但有些可能会丢失.

我想从数组中替换它是否存在,如果不是单独保留文本.

我可以使用什么正则表达式在下面的代码段中的$ text中preg_match_all变量,在适当的地方替换$ replace并回显到浏览器?

<?php
    $replaces = array('testa.testb.testc' => '1', 'testc.testa' => '2', 'testf' => '3');
    $text = '{{$testa.testb.testc}}<br>{{$testc.testa}}<br>{{$testf}}<br>{{$aaaaa}}<br>';

    preg_match_all('/\{\{\$(\w+)\}\}/e', $text, $matches);

    foreach($matches as $match)
    {
        $key = str_replace('{{$', '', $match);
        $key = str_replace('}}', '', $key);

        if(isset($replaces[$key]))
            $text = str_replace($match, $replaces[$key], $text);
    }

    // I want to end up echo'ing:
    //   1<br>2<br>3<br>{{$aaaaa}}<br>

    echo $text;
?>
Run Code Online (Sandbox Code Playgroud)

http://codepad.viper-7.com/4INvEE

这个:

'/\{\{\$(\w+)\}\}/e'
Run Code Online (Sandbox Code Playgroud)

就像在片段中一样,是我得到的最接近的.

它也必须使用变量名中的do.

在此先感谢您的帮助!

php regex search replace preg-match

8
推荐指数
1
解决办法
8650
查看次数

用PHP中这样命名的变量替换括号内的文本

我想[]用一个名为该字符串的数组中随机选择的项替换方括号()中的所有字符串.

它与这个问题非常相似,但有一个转折,因为我想用名为的数组中的字符串替换不同的括号内容.

一个例子应该让这一点更清晰.

所以说我有字符串

"This is a very [adjective] [noun], and this is a [adjective] [noun]."
Run Code Online (Sandbox Code Playgroud)

变量:

$adjective = array("big","small","good","bad");
$noun      = array("house","dog","car");
Run Code Online (Sandbox Code Playgroud)

我们希望"This is a very big house, and this is a good dog."通过随机选择返回或其他任何东西.也就是说,我想编写一个PHP函数,它将[string]使用名为的数组中随机选择的项替换每个函数$string.现在,如果通过随机选择它最终重复选择并不重要,但它必须为每个[]项目做出新的选择.

我希望我已经清楚地解释了这一点.如果你得到了我想要达到的目标,并且可以想到一个更好的方法来做到这一点,我将非常感激.

php regex string replace

1
推荐指数
1
解决办法
4230
查看次数

php花括号替换值

我以前从未在 php 中使用过花括号

但是我正在更新一个现有的网站...

在数据库中,我有信息,例如

YOUR NAME {CH_NAME} {URL_NAME}
Run Code Online (Sandbox Code Playgroud)

我想检索信息并以适当的方式显示它我想将 CH_NAME 变量影响为一个与 URL_NAME 相同的值,并最终显示完整的信息,例如:

1-正常:

$beforeStr="YOUR NAME {CH_NAME} {URL_NAME}";
$CH_NAME="John";
$URL_NAME="http://xxxx";

echo $beforeStr ; //would like to show : YOUR NAME John http://xxxx
Run Code Online (Sandbox Code Playgroud)

问候

php curly-braces

0
推荐指数
1
解决办法
4169
查看次数

标签 统计

php ×4

regex ×2

replace ×2

curly-braces ×1

preg-match ×1

search ×1

string ×1