2018-02-21 00:41:46 -05:00
|
|
|
|
|
|
|
|
|
|
|
regular expression screen
|
|
|
|
---------------------------------------------
|
|
|
|
|
|
|
|
```
|
|
|
|
+------------------------+----+
|
|
|
|
source | DCARD | \/ |
|
|
|
|
+-----------------------------+
|
|
|
|
+-----------------------------+
|
|
|
|
new name |First 20 |
|
|
|
|
+-----------------------------+
|
|
|
|
+-----------------------------+
|
|
|
|
function | extract(replace) | \/ |
|
|
|
|
+------------------------+----+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(each block is a regex, all blocks are concatenated into an array and linked to mapped ^alues)
|
|
|
|
|
|
|
|
first 20 characters
|
|
|
|
+----------------------------------+
|
|
|
|
|
|
|
|
+----------------------------------------------------------------------------------------------------+
|
|
|
|
+ | +-----------------------------+ |
|
|
|
|
| | Field Name| Description | \/| expressed as jsonb path "{Description}") |
|
|
|
|
+-------+ | +-----------------------------+ |
|
|
|
|
| | +-------------------------+ |
|
|
|
|
+ |label of return ^alue |f20 | |
|
|
|
|
| +-------------------------+ |
|
|
|
|
| +-------------------------+ |
|
|
|
|
| regular expression |.{1,20} | supply test run ^alues |
|
|
|
|
| +-------------------------+ |
|
|
|
|
| +-------------------------+ |
|
|
|
|
| replace wit | | |
|
|
|
|
| +-------------------------+ |
|
|
|
|
| +---+ |
|
|
|
|
| Map Results|Y/N| |
|
|
|
|
| +---+ |
|
|
|
|
| +---+ |
|
|
|
|
| Find All Matches| g | |
|
|
|
|
| +---+ |
|
|
|
|
| filter(s) |
|
|
|
|
| +-------------------------------------------+ |
|
|
|
|
| +----------------+ +----------------+ |
|
|
|
|
| |Category | |Restaurantes | |
|
|
|
|
| +----------------+ +----------------+ |
|
|
|
|
| +----------------+ +----------------+ |
|
|
|
|
| |Category | |Services | |
|
|
|
|
| +----------------+ +----------------+ |
|
|
|
|
| |
|
|
|
|
+----------------------------------------------------------------------------------------------------+
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
2018-02-17 13:57:14 -05:00
|
|
|
map definition
|
|
|
|
----------------------------------------------------------
|
|
|
|
|
|
|
|
{
|
|
|
|
"defn": [
|
|
|
|
{
|
|
|
|
"key": "{Description}",
|
|
|
|
"map": "y",
|
2018-02-21 00:41:46 -05:00
|
|
|
"flag": "g",
|
2018-02-17 13:57:14 -05:00
|
|
|
"field": "f20",
|
|
|
|
"regex": ".{1,20}",
|
|
|
|
"retain": "y"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "First 20",
|
|
|
|
"where": [
|
2018-02-21 00:41:46 -05:00
|
|
|
{"Category":"Restaurantes"},
|
|
|
|
{"Category":"Services"}
|
2018-02-17 13:57:14 -05:00
|
|
|
],
|
|
|
|
"function": "extract",
|
|
|
|
"description": "pull first 20 characters from description for mapping"
|
|
|
|
}
|
|
|
|
|
2018-02-26 15:22:38 -05:00
|
|
|
SQL
|
|
|
|
---------------------------------------------
|
|
|
|
INSERT INTO
|
|
|
|
tps.map_rm
|
|
|
|
SELECT
|
|
|
|
'DCARD',
|
|
|
|
'First 20',
|
|
|
|
$$ {
|
|
|
|
"defn": [
|
|
|
|
{
|
|
|
|
"key": "{Description}",
|
|
|
|
"map": "y",
|
|
|
|
"flag": "g",
|
|
|
|
"field": "f20",
|
|
|
|
"regex": ".{1,20}",
|
|
|
|
"retain": "y"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "First 20",
|
|
|
|
"where": [
|
|
|
|
{"Category":"Restaurantes"},
|
|
|
|
{"Category":"Services"}
|
|
|
|
],
|
|
|
|
"function": "extract",
|
|
|
|
"description": "pull first 20 characters from description for mapping"
|
|
|
|
} $$::jsonb,
|
|
|
|
1
|
2018-02-17 13:57:14 -05:00
|
|
|
|
|
|
|
|
2018-02-21 00:41:46 -05:00
|
|
|
assign new key/values to the results of the regular expression, and then back to the underlying row it came from
|
|
|
|
-----------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
```
|
|
|
|
+---------------------------------+------------------+---------------+---------------+-----------------+----------------+
|
|
|
|
| returned from expression | party | reason | city | provice | |
|
|
|
|
+-----------------------------------------------------------------------------------------------------------------------+
|
|
|
|
| {"f20": "BIG LOTS #00453 STOW"} | Big Lots |Home Supplies |Stow |Ohio | |
|
|
|
|
| {"f20": "1794MOTHERHOOD #1794"} | Motherhood |Clothes | | | |
|
|
|
|
| {"f20": "3 PALMS HUDSON OH"} | 3 Palms |Restaurantes |Hudson |Ohio | |
|
|
|
|
| {"f20": "36241 7-ELEVEN STOW "} | 7-Ele^en |Gasoline |Stow |Ohio | |
|
|
|
|
| {"f20": "7-ELEVEN 36241 STOW "} | 7-Eleven |Gasoline |Stow |Ohio | |
|
|
|
|
| {"f20": "98626 - 200 PUBLIC S"} | Public Sq Parking|Recreation | | | |
|
|
|
|
| {"f20": "ACE HARDWARE HUDSON "} | Ace Hardware |Home Maint |Hudson |Ohio | |
|
|
|
|
| {"f20": "ACH CAFE AND STARBUC"} | Starbucks |Restaurantes | | | |
|
|
|
|
+---------------------------------+----------------------------------+---------------+-----------------+----------------+
|
|
|
|
```
|