使用正则表达式从字符串中删除

时间:2013-05-28 16:03:41

标签: php regex preg-replace special-characters

我正在尝试从字符串中删除以下字符。但是只删除了»¿

Code:

protected function removeSpecialChars($comment)
{
    //Remove ''
    return preg_replace('/[]+/', '', $comment);
}

Input:

Your spelling is amazing

Output:

Your spellingï is amazing

任何帮助都会非常感激 - 这让我很生气。

更新

感谢您的所有评论。我从JSON网址获取字符串 - 特别是来自Google的GData。我使用普通字符串测试代码并且它工作正常,但是在JSON上测试它时它不起作用。

从JSON URL获取评论的代码:

$url = 'https://gdata.youtube.com/feeds/api/videos/' . $video_id .'/comments?alt=json&max-results=50&v=2';
$comments = array();

$json   = file_get_contents($url);
$data   = json_decode($json, TRUE);

foreach($data["feed"]["entry"] as $item)
{
    array_push($comments, $item["content"]['$t']);
}

不确定它是否与JSON的字符编码有关...

2 个答案:

答案 0 :(得分:0)

尝试添加u修饰符:

return preg_replace('/[]+/u', '', $comment);

答案 1 :(得分:0)

return preg_replace("/\\357\\273\\277/um", '', $comment);