回答
str='[email protected]'
echo "${str#*@}"
- 的
#
人物說卸下擴展的模式匹配的最小前綴。 %
字符表示刪除與模式匹配的最小擴展後綴。(所以你可以做"${str%@*}"
得到"test1"
一部分。)- 的
/
字符意味着卸下擴展符合以下圖案的最小和第一子。 Bash有它,但它不是POSIX。
如果您將模式字符翻倍,則它會與貪婪匹配。
##
表示刪除與模式匹配的最大擴展前綴。%%
表示刪除與圖案匹配的最大後綴的擴展。//
表示刪除所有匹配模式的擴展子串。
如何更改此選項以打印test1而不是test2? –
@ChrisF我已經擴展了我的答案,以說明如何做到這一點。 – kojiro
echo "[email protected]" | sed 's/.*@//'
或者,在bash中,'xxx =「test1 @ test2」; sed's /.*@//'<<< $ x'。 –
@JonathanLeffler我知道你在這裏的意思,但是你是不是錯過了一些'x'es? – kojiro
嗯......是的,它看起來像'dos equis'逃脫了。編輯評論有點晚了... –
echo "[email protected]" | awk -F "@" '{print $2}'
或者在bash中,'awk -F「@」'{print $ 2}'<<<「test1 @ test2」' – kojiro
另一種方式擊:中
[email protected] read left right <<< "$string"
echo "$right"
- 1. 用換行符分割bash字符串
- 2. 分割字符串用加號(+)字符
- 3. r分割字符串用符號
- 4. 用任何符號分割字符串
- 5. 分割字符串括號
- 6. 與表情符號分割字符串
- 7. 字符串分割到Bash中
- 8. Bash,分割字符串失敗
- 9. 在bash中分割字符串
- 10. 如何分割在bash字符串由/
- 11. 用括號分割Python的字符串
- 12. 用方括號分割字符串
- 13. 分割字符串用星號蟒蛇
- 14. 分割字符串用逗號2008
- 15. 逗號分隔字符串分割
- 16. 如何使用\符號分割字符或字符串?
- 17. 分割而佔轉義字符的字符串用分號
- 18. 用冒號(:)分割字符串並用冒號分開數字
- 19. 在符號後面分割字符串,在符號後面獲得字符串
- 20. 包含逗號與逗號分隔符的分割字符串
- 21. 帶逗號的分割字符串也會拆分&符號
- 22. 分割使用boost ::字符串分割
- 23. 分割字符串
- 24. 分割字符串
- 25. 分割字符串
- 26. 分割字符串
- 27. 分割字符串
- 28. 分割字符串
- 29. 分割字符串
- 30. 分割字符串
可能重複[Bash中字符串操作。 。 。刪除主要部分](http://stackoverflow.com/questions/2680274/string-manipulation-in-bash-removing-leading-section) – Kaz