2012-07-14 39 views
0

我正在查找一个命令,该命令将得到变量中是否存在空格的结果或在awk中的结果。我不是找在awk中查找变量中是否有空格

split(variable,array," ") 

,然后遍历这个数组找到它。我正在寻找一种更有效的方式。任何人都可以指导我这一点。谢谢。

回答

1

您可以使用AWK index()string function来搜索目标字符串:

$ awk 'BEGIN{var="ga p";if(index(var," ")>0) print "Space"; else print "No space"}' 
Space 

$ awk 'BEGIN{var="gap";if(index(var," ")>0) print "Space"; else print "No space"}' 
No space 

从文档上面:

index(in,find)

这在搜索的字符串 查找第一次出现的字符串,并返回字符位置这里是发生在 字符串中开始。..如果发现是没有找到,指数返回0。

+0

谢谢....有没有函数在变量中删除空格如果找到了 – User 2012-07-14 16:51:11

+0

@User看一下'sub()'和'gsub()'awk字符串函数(你可以使用我的答案中的链接进入包含该信息的页面)。此外,搜索字符串的另一个选项是'match()'函数,只是fyi。 – Levon 2012-07-14 16:54:39

1

使用awks内置的正则表达式引擎:

variable ~//