0

我使用 curl 将网站的内容转换为字符串。之后我想删除所有的空白。为此,我使用$content = preg_replace('/\s+/', '', $content);. 但它不能正常工作。我究竟做错了什么?

我使用此代码来获取内容:

$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, 'http://www.italiakalmar.se/ui/Article/show.aspx?id=185&m=165');
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($curl_handle);
curl_close($curl_handle);

$pos = stripos($content, "<body");
$content = substr($content, $pos);

$content = strip_tags($content);

$content = html_entity_decode($content, ENT_COMPAT, 'UTF-8');

$content = preg_replace('/\s+/', '', $content);

$content = mb_strtolower($content, 'utf-8');

echo $content = str_replace("–", "-", $content);

I then get this string: //fabrikenrestaurangenpizzerianintromenykvalitetallergihittatillosspizzeriaitaliapizzeriaitaliaöppnadedörrarnaförstagÃ¥ngenredan1977,ochdrivssedandessisammamiljöochsammakaraktäristiskastil.viharalltidutsöktapizzoraverkäntgodsmakochkvalitet.komintillpizzeriaitaliaochlÃ¥tossserveradigenutsöktpizza.elleromdetpassarbättre-lÃ¥tosslevereradenhemtilldig!nukanmanävenbetalamedkortvidutkörning! öppettider:mÃ¥n-torskl:15-21fredag​​  kl:15-22lördag  kl:12-22söndag kl:12-21ingÃ¥rikalmarkrogar.se

如您所见,空白仍然存在。

4

2 回答 2

1
$content = str_replace(' ', '', $content);

没有正则表达式方法。

于 2012-06-29T08:08:32.223 回答
0
$content = preg_replace('/\s+/', '', $content);

只搜索一个或第一个匹配

您可以使用此匹配给定字符串 $content 中的所有空格

$content = preg_replace('/\s+/g', '', $content);

您需要将“g”用于正则表达式中的全局搜索

您可以使用这个免费的在线工具测试甚至创建正则表达式

http://www.gskinner.com/RegExr/

于 2012-06-29T08:25:40.930 回答