タイトルテキストがあります。 "英国で最も危険な仕事のトップ5"。 単語「危険」を含むすべての行と、それらの間の距離が3ワードの単語「英国」を検索したい。Google Bigquery Regexpを使用した近接検索
上記のテキストのように、テキストに「危険」と「英国」という単語が含まれていて、それらの間の距離も3ワードであるため、条件に一致する必要があります。
私は、構文の下に試してみました:
SELECT PubName,Title
From emp.final_month
WHERE REGEXP_CONTAINS(Title,r'\b?(dangerous).*(UK)\b?')
(クエリの上に私にそれらの間の位置に基づいて、単語「危険」と「英国」ではなくを持っているすべてを提供します。)
ない置く方法がわから上記のクエリの位置。誰でもBigQueryでサポートされているregexpの正しい構文を手に入れることができます。
正規表現の構文も歓迎します。
は、r '\ bdangerous '試し(?:\ W + \ + W){0,3} W + UK \ \ –
@wiktor、いやそれdidntの仕事b''。たとえ私が(0,6)を与えても、それらの間に3つの単語だけ一致する必要があるので、それは私には記録が残っていません。 –
大文字小文字を区別しない場合は、次の操作を行う必要があります。SELECT PublisherName、Headline content.feed_2017_09_30から REGEXP_CONTAINS(LOWER(見出し)、r '\ bdangerous \ b(?:\ w + [ - ]){3} \ buk \ b ')。他人を助けるかもしれない –