2015-02-11 51 views
-2

我使用Notepad ++ v6.4.5來編輯html代碼。我需要找到並替換html標籤之間的文本。例如:使用Notepad ++替換html標記之間的文本的正則表達式

</a> 
<h3></h3> 
<p></p> 
</div> 
... ... 

<span class="product-thumb-title">Here is title sample</span> 
OLS-34/-35/-36       </a> 
</div> 

我需要移動文本:

</a> 
<h3>Here is title sample</h3> 
<p>OLS-34/-35/-36 </p> 
</div> 

,並刪除

<span class="product-thumb-title">Here is title sample</span> 
OLS-34/-35/-36       </a> 
</div> 

文字和模型變量,它們都不同,有空格和換行(如示例中所示)。我如何使用Notepad ++來做到這一點?

+1

正則表達式將是可怕的完成這個任務。 [**請參閱**(https://regex101.com/r/zR4dI1/1) – hwnd 2015-02-11 20:40:41

+0

這是有用的代碼,但在查找代碼時發生錯誤,在某些地方,它一次找到/突出顯示三個部分,有時兩件,而不是一對。這裏是完整的[html](http://jsfiddle.net/u4hudz1y)。 – minto 2015-02-11 22:53:11

回答

0

用正則表達式解析標籤是一個混亂的噩夢,但給這一個去..

隨着. matches newline檢查,你可以這樣做:

Find: </a>\s*<h3></h3>\s*<p></p>\s*</div>[\s.]*?<span.*?>\s*(.*?)\s*</span>(.*?)</a>\s*</div> 
Replace: </a>\r\n<h3>\1</h3>\r\n<p>\2</p>\r\n</div> 
+0

是的,它工作得很好,謝謝。 – minto 2015-02-12 12:52:19