ksh脚本中的模式匹配

时间:2013-02-18 18:26:26

标签: ksh

我在

这样的变量中有网址参数

a=44&search=My World

这里我想做一个像

这样的模式匹配
if [ $a =~ "search" ] ;
then
   value=1
else
   value=0

fi

但它不适用于KSH脚本。

2 个答案:

答案 0 :(得分:1)

对于ksh正则表达式,您需要[[,而不是Bourne shell [。虽然在这种情况下使用RE几乎不值得。

所以:

if [[ $a =~ "search" ]]
then 
    value=1 
else 
    value=0
fi

答案 1 :(得分:0)

found=`echo $a | grep search`
if [ -z $found ]; then
  value=0
else
  value=1
fi