我有一个Google电子表格,其中包含来自房地产网站的信息。
电话号码出现在单个小区中,如response.selector.xpath("//tr[contains(@role,'row')]")
Out[2]: []
response.selector.xpath("//tr[(@role='row')]")
Out[3]: []
或*Cell #* (602) 695-2036
。我有一个使用*Cell #* 602-575-1008
的{{1}}函数,它适用于格式化为第二个的数字,但我需要一些适用于所有单元格数字符串的内容,无论格式或字符如何。所以我希望REGEXEXTRACT()
返回\d-\d-\d
和(602) 695-2036
返回6026952036
。
Spreadsheet。数字在第5行,第1行在第6行。
答案 0 :(得分:2)
尝试将所有非数字替换为空。像
这样的东西=regexreplace(A1, "\D+", )
应该有效。您还可以在数组上迭代regexreplace ..
=arrayformula(if(len(A1:A), regexreplace(A1:A, "\D+",),))
更改范围以适应并查看是否有效?
答案 1 :(得分:0)
您可以将所有数字与正则表达式\d
匹配。然后只需将您的匹配列表附加在一起。
以下是JavaScript中的一个示例:
// INIT
var text = '(602) 695-2036';
var result = '';
// PRINT START
console.log("START: "+text);
// GET MATCHES
var matches = text.match(/\d/g);
// LOOP MATCHES
for(var index = 0; index < matches.length; index++){
// APPEND TO RESULT
result += matches[index];
}
// PRINT RESULT
console.log("RESULT: "+result);
答案 2 :(得分:0)
在A5的样本表中尝试这个:
=REGEXreplace(A5,"\D+", "")