【发布时间】:2016-06-19 14:00:12
【问题描述】:
我只需要从字符串中删除前导 0。我发现在 C 中没有像 LTRIM 这样的内置函数。
我正在考虑使用以下 AWK 脚本来执行此操作:
awk -F"," 'BEGIN { a[$1] }
for (v in a) {
{if ($v == 0) {delete a[$v]; print a;} else exit;}
}'
但我猜我没有正确声明数组,它会引发错误。抱歉,刚接触 AWK 编程。你能帮我把它放在一起吗?
【问题讨论】:
-
标准 C 中没有函数
LTRIM()(也没有ltrim())。如果您习惯使用上述功能,则它是您工作环境的非标准扩展。 -
您要求我们帮助您做一些可能根本不需要做的事情。见xyproblem.info。发布示例输入和预期输出,以便我们了解您想要做什么,而不是您认为需要如何做,以便我们开始为您提供帮助。
-
@EdMorton 可能在错误的上下文中使用了“思考”这个词。我确实已经尝试了上述方法,但它引发了错误。将来在发布查询时会更加谨慎地放置正确的“输入”和“输出”。非常感谢您的指点
-
不,
thinking这个词很好,只是有很多不同的方法可以修剪前导零,它们在不同的上下文中都有意义,所以除非你告诉我们为什么要修剪前导零我们只是扔掉一堆代码,任何/所有代码都可能对您的应用程序完全错误,即使它们都修剪前导零。
标签: arrays linux string bash awk