【发布时间】:2017-07-13 01:37:04
【问题描述】:
我有问题。只有当它们与我输入的完全一样时,我才想替换某些字符串。因此,如果有一个带有5 Eurhe 的字符串,则只能替换为例如Steam 5 Euro,如果他独自站立,而不是如果字符串像 How are you 5 Eur pls。
使用我的实际代码这是不可能的......我使用例如:
$string = str_replace('Apple Itunes 25 Euro Guthaben Prepaid De', 'Apple iTunes 25 Euro', $string)
因为这里的字符串包含25 Eur,所以这段代码也添加了一些东西:
$string = str_replace('25 Eur', 'Steam 25 Euro', $string);
但如果我想使用 preg_replace(/\b25 Eur\b/i) 我会收到此错误:
PHP 警告:preg_replace(): Unknown modifier '�' in
所以我有两个问题:
如何使用多字节替换功能?
我如何告诉这个函数只替换某个字符串,如果他是独立的,而不是如果他包含搜索到的字符串?
您好,谢谢!
【问题讨论】:
-
我没有看到未知修饰符,但是锚定了模式
/^25 Eur$/i -
这只是一个sn-p。我的实际列表更长,并且包含像
�这样的字符 - 对于/^25 Eur$/i,它只会在它是一个字符串而不是独立的情况下替换? - 仅当它是一个没有 ANTHING 的字符串时? -
不清楚,A STRING WITHOUT ANTHING 是什么意思?因为
/^25 Eur$/i- 是一种情况,/\b25 Eur\b/i- 是另一种情况 -
知道了,谢谢!
-
为什么现在被“True”取代了?
$myTitle = "How are you?"; $string = mb_ereg_replace('/\bHow are you?\b/i', 'True', $myTitle); echo $string;我得到“你好吗?”...
标签: php regex string preg-replace multibyte