1
我想使用reqex,模式匹配,這個字符串中不同的變量分裂匹配,abc12c20m。其中:解析使用模式在外殼
var1=abc
var2=12
var3=20
主串可以爲EXP abc2c5m不同,但ABC部分始終是相同的和Ç和米總是的字符串中。一種解決方案必須努力都abc12c20m和abc2c5m。
任何幫助將不勝感激。
我想使用reqex,模式匹配,這個字符串中不同的變量分裂匹配,abc12c20m。其中:解析使用模式在外殼
var1=abc
var2=12
var3=20
主串可以爲EXP abc2c5m不同,但ABC部分始終是相同的和Ç和米總是的字符串中。一種解決方案必須努力都abc12c20m和abc2c5m。
任何幫助將不勝感激。
您可以使用正則表達式BASH:
s='abc12c20m'
if [[ "$s" =~ ^(abc)([0-9]+)c([0-9]+)m$ ]]; then
var1=${BASH_REMATCH[1]}
var2=${BASH_REMATCH[2]}
var3=${BASH_REMATCH[3]}
fi
echo "$var1 - $var2 - $var3"
abc - 12 - 20
你可能不使用bash。確保使用bash進行解析。 – anubhava 2014-11-25 07:16:59
./arry_test.sh:線42:意外的標記( './arry_test.sh:線42:鄰近^(一個語法錯誤' ./arry_test.sh:在條件表達式語法錯誤線42:'如果[[「 $ S」 =〜^(ABC)([0-9] +)C([0-9] +)M $]];然後「 – fali 2014-11-25 07:18:31
而如果爲 」abc「 的部分變爲 」CBA「 – fali 2014-11-25 07:19:10