我發現這個,但它假定單詞是空格分開的。bash腳本提取正則表達式模式的所有匹配
result="abcdefADDNAME25abcdefgHELLOabcdefgADDNAME25abcdefgHELLOabcdefg"
for word in $result
do
if echo $word | grep -qi '(ADDNAME\d\d.*HELLO)'
then
match="$match $word"
fi
done
POST EDITED
重新命名爲清楚:
data="abcdefADDNAME25abcdefgHELLOabcdefgADDNAME25abcdefgHELLOabcdefg"
for word in $data
do
if echo $word | grep -qi '(ADDNAME\d\d.*HELLO)'
then
match="$match $word"
fi
done
echo $match
原始留下這樣的評論詢問result
繼續意義。
我很難理解你的腳本。 '$ world'應該與'$ result'相對應嗎?然而,你的模式中沒有任何東西可以匹配'$ world'中的任何東西。你能否展示一個你想要匹配的字符串和你想要使用的模式的更好的例子? – 2010-09-04 18:31:12
我編輯了這篇文章,但沒有正確說明。 – 2010-09-04 19:55:07
目前還不清楚你在找什麼結果。現在'在$ result中輸入'只能看到一個「單詞」(包含在$ result中的完整字符串)你想'$ match'在結尾包含什麼? – 2010-09-04 20:15:28