Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用awk或sed将HTML标记替换为换行符_Html_Windows_Sed_Awk_Newline - Fatal编程技术网

使用awk或sed将HTML标记替换为换行符

使用awk或sed将HTML标记替换为换行符,html,windows,sed,awk,newline,Html,Windows,Sed,Awk,Newline,我有一个大文件,没有换行或回车。这个文件来自HTML,我去掉了所有的标记,除了我想转换成换行符(/n)的标记。使用AWK或SED的快捷方法是什么?我想AWKSED也是一个选项。类似的功能应该可以: sed 's/<[^>]*>/\n/g' file sed's/]*>/\n/g'文件 这意味着:将所有以开头、以结尾的文本替换为换行符 因此,如果我将/tr放在括号中,它应该用换行符替换该标记的所有出现处?是的,这将用换行符更新所有出现处,因为g命令,并且因为[^>]进行非贪婪

我有一个大文件,没有换行或回车。这个文件来自HTML,我去掉了所有的标记,除了我想转换成换行符(/n)的标记。使用AWK或SED的快捷方法是什么?我想AWKSED也是一个选项。

类似的功能应该可以:

sed 's/<[^>]*>/\n/g' file
sed's/]*>/\n/g'文件

这意味着:将所有以
开头、以
结尾的文本替换为换行符

因此,如果我将/tr放在括号中,它应该用换行符替换该标记的所有出现处?是的,这将用换行符更新所有出现处,因为
g
命令,并且因为
[^>]
进行非贪婪匹配,我对您的更改感到有点困惑。如果标签是/tr,那么在您的解决方案中,我应该用/tr替换什么?^>或*?@DominicRomano I添加了一个解释,说明了它是如何工作的。我假设标记是
,而不是
/tr
,因此它将与我发布的命令相匹配(我的初始答案是贪婪匹配的,因此它只适用于行中的单个标记)@DominicRomano我刚刚注意到您已将问题标记为
[windows]
。如果是这种情况,也许你应该用一个编辑器打开输出,该编辑器将
\n
识别为换行符,或者将命令更改为
sed's/]*>/\r\n/g'文件
告诉我没有真正命名为
AWKSED
!!!!发布一些示例输入和预期输出。