簡體   English   中英

REGEX 在兩個字符之間獲取第 N 個單詞

[英]REGEX to get Nth word between two characters

我正在嘗試在 Data Studio 中使用正則表達式,我想要做的是能夠將以下內容提取到自定義字段中,因此我需要為每個字段使用 4 個正則表達式

STRING = first_Product (21) » second_Product_3 (64) »third_Product (53) »fourth_Product_4 (21)

進入

custom_field_1 = first_product。

custom_field_2 = second_product。

custom_field_3 =third_product。

custom_field_4 = 第四個產品。

為了獲得我正在使用的第一個

.+?(?=\()

為了獲得第二個我可以使用

    \»(.*?)\( 

有沒有人可以用這個

您可以使用帶有{2} {3}等量詞的正則表達式從捕獲組 1 中獲取特定匹配項。

^(?:(?:^|»\s+)(.*?)\s*\(\d+\)(?:\s+|$)){2}

模式匹配:

  • ^字符串開始
  • (?:非捕獲組作為整體匹配
    • (?:^|»\\s+)斷言字符串的開頭或匹配»和 1+ 個空白字符
    • (.*?)捕獲組 1 ,盡可能匹配任何字符的 1+ 次
    • \\s*\\(\\d+\\)匹配可選的 whitespce 字符和括號之間的 1+ 位數字
    • (?:\\s+|$)匹配 1+ 個空白字符或斷言字符串的結尾
  • ){2}關閉非捕獲組並重復 n 次(在本例中為 2 次)

正則表達式演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM