可能有人請告訴我什麼,我可能是錯在這裏做:正則表達式語法建議需要
sed 's/&.*?;\s//'
我想刪除所有,但「這TEXT」
lt;td rowspan="2" width="80" valign="top" >
<img src="http://foo.bar/image.jpeg" />
</td>
<td>
THIS TEXT

可能有人請告訴我什麼,我可能是錯在這裏做:正則表達式語法建議需要
sed 's/&.*?;\s//'
我想刪除所有,但「這TEXT」
lt;td rowspan="2" width="80" valign="top" >
<img src="http://foo.bar/image.jpeg" />
</td>
<td>
THIS TEXT

如果字符串您的搜索是恆定的,你可以只使用一個簡單的grep
:
grep -o "THIS TEXT" file.txt
否則,你可以使用sed
有的模式匹配,嘗試:
sed -e 's/&.*;$//' -e '/^$/d' -e '/^lt;td/d' file.txt
您可能需要包括像多個表達式:-e '/^lt;td/d'
在你的數據文件中刪除等不良行,如果它包含他們。
HTH
sed示例正是我需要的,謝謝 – drewsdesign 2012-07-12 04:33:05
@ user1519395,很高興我可以幫助:-) – Steve 2012-07-12 05:52:31
你的正則表達式&.*?;\s
搜索:
&
.*
?
;
\s
但沒有問號,並在您的示例文本;
後沒有空格。
請注意,?
不被解釋爲默認情況下的重複操作符。如果需要,您需要使用sed -r
(或Mac上的sed -E
)啓用「擴展」正則表達式。這是一個向後兼容的事情。
謝謝你的回答,它有助於我進一步理解我'試圖達到目標 – drewsdesign 2012-07-12 04:35:17
您的意思是?
bash:/home/tene>cat file
lt;td rowspan="2" width="80" valign="top" >
<img src="http://foo.bar/image.jpeg" />
</td>
<td>
THIS TEXT

bash:/home/tene>sed -e '/^[&l]/d' -e 's/
$//g' file
THIS TEXT
試圖用什麼取代什麼? – 2012-07-12 01:27:56
給出了空的替換目標,即'//',你可能想要編輯你的問題來重新修改它爲「刪除除''本文'之外的所有內容」。你希望剩下1行還是4行空白,'THIS TEXT'和另一個空白行?祝你好運。 – shellter 2012-07-12 02:44:15
謝謝,我編輯了這個問題。即時通訊設法刪除所有'沒有空行的'本文' – drewsdesign 2012-07-12 03:13:56