从一个自定义字符串替换为另一个自定义字符串


Replace from one custom string to another custom string

如何替换以"a"开头并以"z"结尾的字符串?

基本上,我希望能够做与str_replace相同的事情,但对"大海捞针"中两个字符串之间的值无动于衷。

是否有内置功能?如果没有,我将如何有效地制作一个完成它的函数?

这可以通过正则表达式(简称正则表达式)来完成。下面是一个简单的示例:

$string = 'coolAfrackZInLife';
$replacement = 'Stuff';
$result = preg_replace('/A.*Z/', $replacement, $string);
echo $result;

上面的示例将返回coolStuffInLife

关于给定的

正则表达式/A.*Z/的一些解释
     - 斜杠表示正则表达式的开始和结束;
     - A 和 Z 是您需要替换的开始和结束字符;
     - .匹配任何单个字符
     - * 零个或多个给定字符(在我们的例子中 - 所有字符)
     - 您可以选择使用+而不是*,只有当两者之间有东西时才匹配

查看 Rubular.com,了解测试正则表达式的简单方法。它还提供简短的正则表达式参考

$string = "I really want to replace aFGHJKz with booo";
$new_string = preg_replace('/a[a-zA-z]+z/', 'boo', $string);
echo $new_string;

警惕正则表达式,您想找到第一个 z 还是最后一个 z?只有字母可以介于两者之间吗?字母?在我扩展正则表达式之前,您需要解释各种方案。

使用preg_replace,因此您可以使用正则表达式模式。