我有很多公司名稱(數組鍵)包含單引號的公司數組。
只是想逃避單引號字符在Starting
& Ending
單引號之間array key
。正則表達式 - 查找和替換引號之間的單引號
正則表達式:
('[^']*)'s([^']*')
樣品:
'BJs Wholesale Club' => 'A',
'BJ's Wholesale Club' => 'A',
'Dillard's' => 'A',
'Divi's Labs' => 'A',
'Divis Labs' => 'A',
'ESKAY K 'N' (PVT) LTD' => 'B',
'Nahar Ind'l Enterprises' => 'A',
'Toys 'R' Us' => 'A',
'ToysR Us' => 'A',
所需的輸出:
'BJs Wholesale Club' => 'A',
'BJ\'s Wholesale Club' => 'A',
'Dillard\'s' => 'A',
'Divi\'s Labs' => 'A',
'Divis Labs' => 'A',
'ESKAY K \'N\' (PVT) LTD' => 'B',
'Nahar Ind\'l Enterprises' => 'A',
'Toys \'R\' Us' => 'A',
'ToysR Us' => 'A',
我正則表達式不W¯¯掃了公司包含其他吳丹\'s
或一個以上的單引號
演示:通過選擇每一個
(?<!^)'(?=.*' =>)
它的工作原理:https://regex101.com/r/23aBEI/2
您可能無法在Notepad ++本身中執行此操作;它使用正則表達式的一個較小的子集,並且不能對匹配進行任何處理。不過,你可以用JavaScript很容易地做到這一點。我會回答一個問題。 – Whothehellisthat
@Whathehellisthat正則表達式的一個較小的子集?它使用boost庫,這非常複雜。 「無法通過匹配進行任何處理」取決於您所稱的處理,但它可以在引用捕獲組時取代匹配。也就是說,我同意正則表達式並不是這項任務的好工具。 – Aaron
@Aaron,如主題行中提到的,需要在開始和結束引號之間轉義單引號。 – Anon30