最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

BigQuery REGEXP

IT培训 admin 7浏览 0评论

BigQuery REGEXP

我有一个定义为的查询;

var query = " SELECT " +
            "REGEXP_REPLACE(TRIM(destination_value), r'[^\d]+', '') " +
            "FROM table1";
console.log(query,'query');
bigquery.query(query, function(err, rows) {
            if (err === null) {
                return resolve(rows);
            }else{
                return reject(err);
            }
            });

当我打印查询时它正在返回

SELECT REGEXP_REPLACE(TRIM(destination_value), r'[d]+', '') FROM `table1`;

当我安装它时,为什么我的查询中的特殊字符不存在?有什么我做错了吗?

提前致谢。

回答如下:

你需要双重转义正则表达式元字符\d中的反斜杠,因为JavaScript会消耗第一个反斜杠。请尝试以下方法:

var query = "SELECT " +
            "REGEXP_REPLACE(TRIM(destination_value), r'[\^\\d]+', '') " +
            "FROM table1";

我不希望^也需要被转义,但我已经这样做了,因为看起来这个角色也造成了问题。您可以在下面的演示中验证查询是否正确打印。

Demo

BigQuery REGEXP

我有一个定义为的查询;

var query = " SELECT " +
            "REGEXP_REPLACE(TRIM(destination_value), r'[^\d]+', '') " +
            "FROM table1";
console.log(query,'query');
bigquery.query(query, function(err, rows) {
            if (err === null) {
                return resolve(rows);
            }else{
                return reject(err);
            }
            });

当我打印查询时它正在返回

SELECT REGEXP_REPLACE(TRIM(destination_value), r'[d]+', '') FROM `table1`;

当我安装它时,为什么我的查询中的特殊字符不存在?有什么我做错了吗?

提前致谢。

回答如下:

你需要双重转义正则表达式元字符\d中的反斜杠,因为JavaScript会消耗第一个反斜杠。请尝试以下方法:

var query = "SELECT " +
            "REGEXP_REPLACE(TRIM(destination_value), r'[\^\\d]+', '') " +
            "FROM table1";

我不希望^也需要被转义,但我已经这样做了,因为看起来这个角色也造成了问题。您可以在下面的演示中验证查询是否正确打印。

Demo

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论