replace english quotes to german quotes(将英文引号替换为德文引号)
本文介绍了将英文引号替换为德文引号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
有没有办法实现德语引号(所谓的Gänsefüßchen")
is there a way to implement german quotes (so-called 'Gänsefüßchen')
„ („) and “ (")
在一个函数中转换像
我说你好"
到
我说你好"
&bdquo 应该只应用在字符串的开头,&ldquo 应用在字符串的结尾.
the &bdquo should only apply at the beginning, the &ldquo at the end of an string.
推荐答案
这里是函数,经过测试,运行良好.
Here is the function, tested and works fine.
注意: &bdquo 仅 应用在开头, &rdquo 只应用在字符串的末尾.(hsz 的解决方案不遵循该规则)
Note: the &bdquo applies only at the beginning, the &rdquo only at the end of an string. (hsz's solution isn't following that rule)
function germanquotes($text){
$size = strlen($text);
$i=0;
$replace = array();
$replace['one'] = array();
$replace['two'] = array();
while($i < $size)
{
if($text[$i] == '"')
{
if($text[$i-1] == " " || empty($text[$i-1]))
{
$replace['one'][] = $i;
}
elseif($text[$i+1] == " " || empty($text[$i+1]))
{
$replace['two'][] = $i;
}
}
$i++;
}
$y = 0;
$it = 0;
foreach($replace['one'] as $ghh)
{
$text = substr_replace($text, '„', ($ghh+$y), 1);
$y += 6;
$it++;
}
$to=0;
$i=1;
$u=1;
foreach($replace['two'] as $ghhd)
{
$text = substr_replace($text, '”', ($ghhd-1+$to+((8*$i)-($u*1))), 1);
$i++;
$u +=2;
$to +=6;
}
return $text;
}
测试:
echo(germanquotes('I am "glad" to write "functions" for "stackoverflow" users'));
这篇关于将英文引号替换为德文引号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:将英文引号替换为德文引号
基础教程推荐
猜你喜欢
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 在多维数组中查找最大值 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01