0
希望增加我的AppleScript的能力和我的repeat
我很好奇的使用情況,知道我怎麼可以通過一個文本文件步驟來操作的內容,但我卡在什麼傳遞給打破循環,當我遇到另一名跑。當滿足單獨的條件時,如何打破重複?
鑑於然後文本文件的內容:
Bob
- bacon
- eggs
- waffle
Bacon ipsum dolor amet bresaola andouille flank, meatloaf salami biltong brisket.
James
- sausage
- omelet
Sausage short ribs sirloin landjaeger, biltong swine kielbasa prosciutto.
Bresaola landjaeger jowl alcatra.
Michael
- scrambled eggs
- cereal
- toast
Sam
- sausage
- pancakes
我想我的輸出類似於:
Bob
1. Bob likes bacon
2. Bob likes eggs
3. Bob likes waffle
Bacon ipsum dolor amet bresaola andouille flank, meatloaf salami biltong brisket.
James
1. James likes sausage
2. James likes omelet
Sausage short ribs sirloin landjaeger, biltong swine kielbasa prosciutto.
Bresaola landjaeger jowl alcatra.
Michael
1. Michael likes scrambled eggs
2. Michael likes cereal
3. Michael likes toast
Sam
1. Sam likes sausage
2. Sam likes pancakes
但是當我通過,我能找到的第一個名稱的文字腳本和虛線項目,但我有一個問題,試圖找出如何當另一個名字是如何打破:
該代碼:
tell application "BBEdit"
activate
set testCase to "repeatBreakfast.txt"
select insertion point before first character of text document testCase
set foodCount to 1
repeat
set theCustomer to find "^([A-Za-z]*)$" searching in text 1 of text document testCase options {search mode:grep, wrap around:false} with selecting match
if theCustomer is not found then
exit repeat
else
set theName to (grep substitution of "\\1") as string
repeat
set breakfastItem to find "^- (?=\\D)" searching in text 1 of text document testCase options {search mode:grep, wrap around:false} with selecting match
if breakfastItem is not found then
exit repeat
else
replace selection using ("\\t" & foodCount & ". " & theName & " likes ")
set foodCount to foodCount + 1
end if
end repeat
end if
end repeat
end tell
我得到:
Bob
1. Bob likes Bob likes bacon
2. Bob likes Bob likes eggs
3. Bob likes Bob likes waffle
Bacon ipsum dolor amet bresaola andouille flank, meatloaf salami biltong brisket.
James
4. Bob likes James likes sausage
5. Bob likes James likes omelet
Sausage short ribs sirloin landjaeger, biltong swine kielbasa prosciutto.
Bresaola landjaeger jowl alcatra.
Michael
6. Bob likes Michael scrambled eggs
7. Bob likes Michael cereal
8. Bob likes Michael toast
Sam
9. Bob likes sausage
10. Bob likes pancakes
,但是當我嘗試插入條件下一個名稱:
if theCustomer is found then
set foodCount to 1
exit repeat
end if
我得到:
Bob
1. Bob likes Bob likes bacon
- Bob likes eggs
- Bob likes waffle
Bacon ipsum dolor amet bresaola andouille flank, meatloaf salami biltong brisket.
James
1. James likes James likes sausage
- James likes omelet
Sausage short ribs sirloin landjaeger, biltong swine kielbasa prosciutto.
Bresaola landjaeger jowl alcatra.
Michael
1. Michael likes Michael scrambled eggs
- Michael cereal
- Michael toast
Sam
1. Sam likes sausage
- pancakes
在的AppleScript和BBEdit如何正確地命名和增加我的重複中的文本在循環?