#1: 作者: 逍遙, 時間: 2017-9-03 14:43
有一個很長的字串(一行),如何寫一個循環,查找所有的匹配字串?
在BASH下
謝謝。
我的意思是循環所有的匹配字串,做一些字串處理。
#2: 作者: grinder, 時間: 2017-9-03 15:08
一個笨的辦法:
expr "$string" : '\($substring\)' 取出匹配字串,做你的分析
然後 string=${string#substring}去掉匹配字串,再回到上一步,直到上一步返回非零 $? -ne 0
#3: 作者: 逍遙, 時間: 2017-9-03 21:05
grinder 寫道:
一個笨的辦法:
expr "$string" : '\($substring\)' 取出匹配字串,做你的分析
然後 string=${string#substring}去掉匹配字串,再回到上一步,直到上一步返回非零 $? -ne 0
謝謝,我再想想看
#4: 作者: grinder, 時間: 2017-9-04 11:31
逍遙 寫道:
謝謝,我再想想看
我現在覺得我說的不對,至少不嚴密。不用這麼委婉
#5: 作者: 白茫茫, 時間: 2017-9-04 22:14
用bash做這種計算的工作,就是選錯了武器了。Perl或者Python是你的選擇,它們都可以用pipe和bash連起來。這才是*nix shell強大之處
#6: 作者: Giant, 時間: 2017-9-05 10:43
逍遙 寫道:
有一個很長的字串(一行),如何寫一個循環,查找所有的匹配字串?
在BASH下
謝謝。
我的意思是循環所有的匹配字串,做一些字串處理。
為啥一定要循環?要做啥字串處理?
沒試試sed?
#7: 作者: 逍遙, 時間: 2017-9-05 18:58
解決了。我用sed 把匹配字串變成一行一行的,就好處理了。
謝謝各位。
#8: 作者: grinder, 時間: 2017-9-05 20:46
問狗更省腦子省時間
stackoverflow.com/ques...gs-in-bash
output generated using printer-friendly topic mod, 所有的時間均為 美國太平洋時間