Php 仅当字符串为搜索时替换字符串(preg_Replace multibyte)

Php 仅当字符串为搜索时替换字符串(preg_Replace multibyte),php,regex,string,preg-replace,multibyte,Php,Regex,String,Preg Replace,Multibyte,我有个问题。仅当某些字符串与我键入的字符串完全相同时,我才想替换它们。因此,如果有一个字符串是5欧元,则只能用Steam 5欧元等替换,如果他是单独一人,而不是字符串是请问您5欧元怎么样 用我的实际代码,这是不可能的。。。我使用例如: $string = str_replace('Apple Itunes 25 Euro Guthaben Prepaid De', 'Apple iTunes 25 Euro', $string) 因为这里的字符串包含25欧元此代码还添加了一些内容: $stri

我有个问题。仅当某些字符串与我键入的字符串完全相同时,我才想替换它们。因此,如果有一个字符串是
5欧元
,则只能用
Steam 5欧元
等替换,如果他是单独一人,而不是字符串是
请问您5欧元怎么样

用我的实际代码,这是不可能的。。。我使用例如:

$string = str_replace('Apple Itunes 25 Euro Guthaben Prepaid De', 'Apple iTunes 25 Euro', $string)
因为这里的字符串包含
25欧元
此代码还添加了一些内容:

$string = str_replace('25 Eur', 'Steam 25 Euro', $string);
但是如果我想使用
preg\u replace(/\b25 Eur\b/I)
我会得到以下错误:

PHP警告:preg_replace():未知修饰符'�' 在

所以我有两个问题:

  • 如何使用多字节替换函数

  • 如果某个函数是独立的,而不是包含搜索的字符串,我如何告诉该函数只替换某个字符串

  • 你好,谢谢

    这应该行得通

    搜索人:

    ^(25 Eur)$
    
    替换为:

    Steam 25 Euro
    
    输入:

    Apple Itunes 25 Euro Guthaben Prepaid De', 'Apple iTunes 25 Euro
    25 Eur
    
    输出:

    Apple Itunes 25 Euro Guthaben Prepaid De', 'Apple iTunes 25 Euro
    Steam 25 Euro
    
    PHP代码:

    <?php
    $re = '/^(25 Eur)$/m';
    $str = 'Apple Itunes 25 Euro Guthaben Prepaid De\', \'Apple iTunes 25 Euro
    25 Eur';
    $subst = 'Steam 25 Euro';
    
    $result = preg_replace($re, $subst, $str);
    
    echo "The result of the substitution is ".$result;
    

    我没有看到未知的修改器,但是锚定模式
    /^25欧元$/I
    这只是一个片段。我的实际列表较长,包含
    -使用
    /^25 Eur$/i
    仅当其为字符串而不是单独存在时才进行替换?-只有当它是一根没有蚂蚁的绳子?不清楚,没有蚂蚁的绳子是什么意思?因为
    /^25欧元/i
    -是一种情况,
    /\b25欧元/b/i
    -是另一种情况,明白了,谢谢!为什么现在这一点被“真”所取代<代码>$myTitle=“你好吗?”$string=mb_ereg_replace('/\b你是谁?\b/i','True',$myTitle);echo$字符串我得到“你好吗?”。。。