前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Kettle使用JavaScript代码处理数据

Kettle使用JavaScript代码处理数据

作者头像
手撕代码八百里
发布2020-07-28 16:32:20
发布2020-07-28 16:32:20
5.3K00
代码可运行
举报
文章被收录于专栏:猿计划猿计划
运行总次数:0
代码可运行

Kettle使用JavaScript代码处理数据

  • 需求
  • 一、建立DB连接
  • 二、建立处理流程
    • 1、拖入表输入功能模块
    • 2、拖入JavaScript代码功能模块
      • 连接表输如---->JavaScript代码
      • 处理经纬度
  • 对处理好的经纬度进行正则表达式匹配处理
  • 过滤记录并分别输出到不同的文件里

需求

处理经纬度格式不正确的数据

经纬度格式如: 经度:a-b-c 纬度:d-e-f

a、b、c、d、e、f都可以为数字(也可以为浮点等,只要符合经纬度要求就OK)

把符合要求的数据存放到一个xlsx里 不符合要求的数据存放到一个xlsx里

建立的处理流程如下:

结果: 处理的结果会得到两个文件,一个是符合要求的,一个是不符合要求的。

一、建立DB连接

连接要处理数据库的数据库

二、建立处理流程

1、拖入表输入功能模块

选择数据库连接、并按自己的需求写入相关的sql

2、拖入JavaScript代码功能模块

考虑到经纬度格式可能会出现存在空格的,而且经纬度不在一块。 现在可以利用JavaScript代码把从数据库中得到的经度和纬度合并到一起,然后对数据进行去掉所有的空格处理。

连接表输如---->JavaScript代码
处理经纬度
代码语言:javascript
代码运行次数:0
复制
//Script here

 //去前后空格
//var LO = LONGITUDE.replace(/(^\s*)|(\s*$)/g, "");
//var LA = LATITUDE.replace(/(^\s*)|(\s*$)/g, "");

//拼接成一个要验证的字符串
//var LL = LO +"," +LA;

 //去前后空格
//var LL=L1.replace(/(^\s*)|(\s*$)/g, "");


//直接去除所有的空格
var LL = (LONGITUDE+","+LATITUDE).replace(/\s+/g,"");

对处理好的经纬度进行正则表达式匹配处理

配置正则表达式

代码语言:javascript
代码运行次数:0
复制
正则表达式

([\d^(-?\d+)(\.\d+)?$]+)-([\d^(-?\d+)(\.\d+)?$]+)-([\d^(-?\d+)(\.\d+)?$]+)[,]([\d^(-?\d+)(\.\d+)?$]+)-([\d^(-?\d+)(\.\d+)?$]+)-([\d^(-?\d+)(\.\d+)?$]+)

过滤记录并分别输出到不同的文件里

过滤记录的配置

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Kettle使用JavaScript代码处理数据
  • 需求
  • 一、建立DB连接
  • 二、建立处理流程
    • 1、拖入表输入功能模块
    • 2、拖入JavaScript代码功能模块
    • 对处理好的经纬度进行正则表达式匹配处理
    • 过滤记录并分别输出到不同的文件里
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档