PHP/Regex 用正确的引号替换英寸字符

标签 php regex str-replace

我想用正确的德语引号 „example“ 替换英制字符 "

一个例子字符串是:

$string = `Mein Name ist "Joseph"`

我试过了

str_replace("\"", '„', $string) 

但当然它会用相同的引号替换所有的英寸字符

Mein Name ist „Joseph„ 

所以我想我需要一个正则表达式来以某种方式用替换一个单词之前的英寸字符和同一个单词之后的英寸字符用得到结果

Mein Name ist „Joseph“

尽管阅读了正则表达式的工作原理,但我真的不知道如何实现它。

欢迎任何提示,谢谢!

最佳答案

尝试这样的事情,

$re = '/("([^"]*)")/';
$str = 'Mein Name ist "Joseph"';
$subst = '„$2“';

$result = preg_replace($re, $subst, $str);

echo $result;

查看,preg_replace function

制作this on regex.com

关于PHP/Regex 用正确的引号替换英寸字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63055662/

相关文章:

php - 用换行符替换字符

php - Netbeans sftp 下载 "only new"

php - 访客用户和登录用户的两种不同布局- Yii2

regex - 正则表达式的代码覆盖工具?

c++ - 正则表达式从单词中的位置排除字符

php - PHP 的 str_replace 替代方案

php - 获取可用的 Drupal View 列表

php - 在 Codeigniter 中写入一个数组来配置?

regex - 与正则表达式匹配除特定数字以外的任何数字

php - 如何使用php中的str_replace函数替换数组中的值