2017-04-26 31 views
0

我想拼湊一個匹配多個單詞的正則表達式。 我有一個導入文件,有一個列標題,將「項目描述」類似的東西,因爲將有多個頭,它不能太過貪婪的匹配。例如「商品位置說明」找不到「商品描述」它會有自己匹配的正則表達式。像給定單詞匹配的正則表達式

我把以下內容放在一起:(?i)(?<=^|\s)Item Description(?=\s|$)但它並不適用於所有情況。

一些有效的例(忽略大小寫):

  • 物品描述

  • ITEM_DESCRIPTION

  • 詞語物品描述

  • 物品描述一些垃圾之前一些垃圾之後單詞

一些無效案件(忽略大小寫):

  • 項目位置描述

  • 位置說明

  • 媒體項目

  • 類型描述

  • 項目

  • 說明

+1

注在這裏查找無用 –

回答

0

您可以很方便地測試上RegexStorm網站正則表達式。

你的目的,如果不適合的唯一情況是一個與「_」,只需將其添加到您的模式:

(?i)(?<=^|\s)Item[ \t_]Description(?=\s|$) 
+0

這也將採取根據OP無效的「Item \ nDescription」。 –

+1

你說得對,更新了我的答案。 –

+0

這工作得很好。有沒有辦法讓它匹配記錄的可選前綴?所以物品描述和記錄物品描述都是有效的? –

1

您可以使用:

(?i)item[ _]description