php preg_replace 替换文本文件中的空格

我正在尝试使用preg_replace.Content in text 从文本文件中删除一些内容,如下所示


1

    *useless*Text

                                    Steve Waugh

如何转换内容


1    Steve Waugh

我的代码在下面。它不起作用。我不知道我在哪里犯了错误?


$content = file_get_contents('test.txt');

$content = preg_replace('/\s[*]useless[*]Text\s/', '  ', $content);

file_put_contents('test.txt', $content);


慕尼黑5688855
浏览 138回答 1
1回答

梦里花落0921

如果您想保持缩进之前*useless*Text,使其Steve Waugh在结果之前,您可以使用捕获组。\h*\R(\h+)[*]useless[*]Text\s*\h*\R匹配 0+ 个水平空白字符和一个 Unicode 换行符序列(\h+)捕获组 1,匹配 1+ 水平空白字符[*]useless[*]匹配*useless*Text\s*匹配Text和 0+ 个空白字符查看正则表达式演示| php演示在更换使用$1preg_replace('/\h*\R(\h+)[*]useless[*]Text\s*/', '$1', $content);要替换为预定的空格,您可以使用\s*[*]useless[*]Text\s*正则表达式演示preg_replace('/\s*[*]useless[*]Text\s*/', '  ', $content);
打开App,查看更多内容
随时随地看视频慕课网APP