[英]Regex to change quotation mark conflict
我正在尝试创建一个 PHP 正则表达式来过滤我在 WordPress 上的内容。我想将引号" "
转换为带有不间断空格的« »
。
我还使用木材 (TWIG) 过滤器来实现这一点。
问题是这个过滤器也改变url tags
和image tags
。
例子:
<a href="http://www.example.com">My link</a>
<a href=« http://www.example.com »>My link</a>
我可以在我的正则表达式中添加什么来避免这种情况? 我能帮忙吗?
public function add_to_twig( $twig ) {
$twig->addExtension( new Twig_Extension_StringLoader() );
$twig->addFilter( new Timber\Twig_Filter( 'changemarks', 'changemarks' ) );
return $twig;
}
function changemarks( $text ) {
$regex = '/"(.*?)"/';
$subst = '« $1 »';
$result = preg_replace($regex, $subst, $text);
return $result;
}
{{ post.content|changemarks }}
很难在 html 中制作正则表达式我的解决方案只是 select 字符串,在"
之前和之后为文本留出一些空间
$regex = '/ "(.+?)" /';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.