我有问题。我想替换某些字符串,只要它们与我输入的字符串完全相同。因此,如果有一个包含5 Eur
的字符串,则只应将其替换为例如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)
但如果我想使用START startNode=node:node_auto_index(name="Start"),
endNode=node:node_auto_index(name="Finish")
MATCH p=(startNode)-[:NAVIGATE_TO*]->(endNode)
RETURN p AS shortestPath,
reduce(distance=0, r in relationships(p) : distance+r.distance) AS totalDistance
ORDER BY totalDistance ASC
LIMIT 1;
,我会收到此错误:
PHP警告:preg_replace():
中的未知修饰符' '
所以我有两个问题:
如何使用多字节替换功能?
如果他独立而不是包含搜索到的字符串,我怎么能告诉这个函数只替换某个字符串?
问候,谢谢!
答案 0 :(得分:1)
这应该有效。
搜索:
^(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;