hiveで記号の前の数字を取得する方法は何ですか。
Hiveでは、regexp_extract()関数を使用して、数字の前にある記号を切り取ることができます。
以下は日本語でのパラフレーズの例です。
テキストという数字と記号を含む文字列があると仮定し、私たちは記号より前の数字を切り取りたいです。
最初に、”regexp_extract()” 関数と正規表現'([0-9]+)’を使用して数字を抽出できます。それから、抽出した結果を元の列に連結することで、数字の前だけを残すようにできます。
以下は具体的なHiveクエリ文です:
SELECT text, CONCAT(regexp_extract(text, '([0-9]+)'), regexp_extract(text, '[^0-9]*')) AS result
FROM your_table;
your_tableというテーブルには、文字列の列であるtextが含まれており、resultは切り取り結果の列名です。
‘([0-9]+)’という正規表現は1つまたは複数の数字と一致し、'[^0-9]*’は1つまたは複数の数字以外の文字と一致します。これら2つの正規表現の結果を連結することで、必要な結果を得ることができます。
頼み事がお役に立てば嬉しいです!