2
A
回答
2
就我所知,GNU sed不支持預讀和後退。爲您解決問題的簡單方法是用一些「獨特」的字符串替換KLMabc
,更換所有abc
秒,然後用KLMabc
sed 's/KLMabc/#####/g' <input_file> | sed 's/abc/rrr/g' | sed 's/#####/KLMabc'
或
sed 's/KLMabc/#####/g' -e 's/abc/rrr/g' -e 's/#####/KLMabc' <input_file>
1
更換唯一的字符串回來,如果你能使用ssed
,你就可以使用Perl樣式的lookbehind assertion:
ssed -R 's/(?<!KLM)abc/rrr/g' input.txt
舉例:
$ echo "dasdasKLMabc dasabc" | ssed -R 's/(?<!KLM)abc/rrr/g'
dasdasKLMabc dasrrr
3
sed似乎不支持後視。但你可以在Perl中做到這一點很容易:
[email protected]:~$ echo -e "llalaabc\nKLMabc" | perl -pe 's/(?<!KLM)abc/rrr/'
llalarrr
KLMabc
[email protected]:~$
相關問題
- 1. 匹配詞後使用SED/AWK
- 2. 使用匹配匹配整個單詞
- 3. 使用正則表達式\ W匹配使用sed的非單詞的問題
- 4. 如何使用OMetaJS匹配單詞?
- 5. 使用RegEx匹配相似單詞
- 6. 使用grep匹配確切的單詞
- 7. 使用RE找到匹配的單詞
- 8. 如何使用LINQ匹配單詞
- 9. grep匹配一個單詞,但不匹配另一個單詞
- 10. 如何使用sed來匹配某個單詞,然後用引號包裝該單詞?
- 11. 的sed:匹配文件
- 12. 使用正則表達式匹配部分單詞或單詞
- 13. 使用Solr匹配包含相似單詞的單詞嗎?
- 14. 在單詞中匹配單詞Python
- 15. ruby正則表達式有多個單詞有條件匹配
- 16. 使用sed用多行替換單詞?
- 17. 使用sed匹配多個線條圖案
- 18. 多個文件中的單詞匹配
- 19. 使用javascript匹配表單條目?
- 20. ř匹配整個單詞
- 21. PHP匹配整個單詞
- 22. 準確單詞匹配Solr
- 23. vim:匹配單詞不以$
- 24. Ruby部分單詞匹配
- 25. 匹配整個單詞
- 26. 匹配條件
- 27. 刪除單詞用的sed
- 28. 兩個文件並提取匹配的單詞匹配一個
- 29. 從文件匹配單詞列表並輸出其餘單詞
- 30. 匹配非號碼使用的sed
不是危險在「獨一無二」的字符串使用'猜測\ N'的(除非用戶添加)此字符串將永遠不會出現在模式空間。 – potong 2013-03-15 12:23:04