为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PHP
手掌心 2023-08-19 16:56:02
我想"用正确的德语引号替换英寸字符„example“。一个示例字符串是:$string = `Mein Name ist "Joseph"`我试过str_replace("\"", '„', $string)但当然它会用相同的引号替换所有英寸字符Mein Name ist „Joseph„所以我想我需要一个正则表达式来以某种方式替换单词之前的英寸字符和同一单词之后的„英寸字符以获得结果“Mein Name ist „Joseph“尽管阅读了正则表达式的工作原理,但我无法真正弄清楚如何实现这一目标。任何提示都将受到欢迎,谢谢!
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

尝试这样的事情,


$re = '/("([^"]*)")/';

$str = 'Mein Name ist "Joseph"';

$subst = '„$2“';


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


echo $result;


查看完整回答
反对 回复 2023-08-19
?
繁花不似锦

TA贡献1851条经验 获得超4个赞

干得好。我使用正则表达式替换第一个“,然后用第二个字符替换其他所有内容。


$string = 'Mein Name ist "Joseph"';

$patterns = array();

$patterns[0] = '/ "/';

$patterns[1] = '/^"/';

$replacements = array();

$replacements[1] = ' „';

$replacements[0] = '^„';

$str = preg_replace($patterns, $replacements, $string);

$str = str_replace("\"", '“', $str);

echo $str;


查看完整回答
反对 回复 2023-08-19
  • 2 回答
  • 0 关注
  • 94 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信