0

列の 1 つに次のようなデータがあり、州や郵便番号ではなく、郊外の名前だけが必要です。

Alteryx を使用して正規表現を試し(\<\w+\>)\s\<\w+\>ましたが、新しい列にいくつかのレコードしか取得できません。

入力:

CABRAMATTA          
CANLEY HEIGHTS      
ST JOHNS PARK       
Parramatta NSW 2150 
Claymore 2559       
CASULA
  

出力

CABRAMATTA          
CANLEY HEIGHTS      
ST JOHNS PARK       
Parramatta
Claymore
CASULA        
4

3 に答える 3

2

この正規表現は、オーストラリアの州の略語までのすべての文字単語に一致します (住所は明らかにオーストラリアのものであるため)。

( ?(?!(VIC|NSW|QLD|TAS|SA|WA|ACT|NT)\b)\b[a-zA-Z]+)+

デモを見る

否定先読みには単語境界が含まれており、州の略語で始まる郊外を許可します (デモを参照)。

于 2015-03-14T11:20:09.250 に答える
0

ボヘミアンの答えを拡張すると、グループ化を使用して、alteryx で REGEXP REPLACE を実行できます。そう:

REGEX_Replace([Field1], "(.*)(\VIC|NSW|QLD|TAS|SA|WA|ACT|NT)+(\s*\d+)" , "\1")

これにより、最初のグループに一致するものはすべて取得されます (つまり、郊外のみ)。2 番目と 3 番目のグループは、州と郵便番号が一致します。完璧な正規表現ではありませんが、ほとんどの方法で取得できるはずです。

于 2018-09-04T16:09:11.183 に答える