Google sheets 使用正则表达式的Google电子表格API setDataValidation
我正在尝试使用谷歌的Node.Js包生成一个带有API验证的谷歌电子表格模板 这是我当前的请求:Google sheets 使用正则表达式的Google电子表格API setDataValidation,google-sheets,google-sheets-api,google-api-nodejs-client,Google Sheets,Google Sheets Api,Google Api Nodejs Client,我正在尝试使用谷歌的Node.Js包生成一个带有API验证的谷歌电子表格模板 这是我当前的请求: { "setDataValidation": { "range": { "sheetId": 1656514345, "startRowIndex": 0, "endRowIndex": 0, "startColumnIndex": 1, "endColumnIndex": 1000 }, "rule": {
{
"setDataValidation": {
"range": {
"sheetId": 1656514345,
"startRowIndex": 0,
"endRowIndex": 0,
"startColumnIndex": 1,
"endColumnIndex": 1000
},
"rule": {
"condition": {
"type": "CUSTOM_FORMULA",
"values": [
{
"userEnteredValue": "=REGEXMATCH(TO_TEXT(A2:A1000); '([1-9]){4}[-]([1-9]){2}[-]([1-9]){2}$')"
}
]
},
"inputMessage": "TEST VALIDATION",
"strict": true
}
}
Error: Invalid requests[0].setDataValidation: Invalid ConditionValue.userEnteredValue: =REGEXMATCH(TO_TEXT(A2:A1000); '([1-9]){4}[-]([1-9]){2}[-]([1-9]){2}$')
}
我得到以下错误:
{
"setDataValidation": {
"range": {
"sheetId": 1656514345,
"startRowIndex": 0,
"endRowIndex": 0,
"startColumnIndex": 1,
"endColumnIndex": 1000
},
"rule": {
"condition": {
"type": "CUSTOM_FORMULA",
"values": [
{
"userEnteredValue": "=REGEXMATCH(TO_TEXT(A2:A1000); '([1-9]){4}[-]([1-9]){2}[-]([1-9]){2}$')"
}
]
},
"inputMessage": "TEST VALIDATION",
"strict": true
}
}
Error: Invalid requests[0].setDataValidation: Invalid ConditionValue.userEnteredValue: =REGEXMATCH(TO_TEXT(A2:A1000); '([1-9]){4}[-]([1-9]){2}[-]([1-9]){2}$')
在电子表格中简单地创建或附加数据可以很好地工作,但是让正则表达式验证工作似乎是一个限制。事实上,RegEx似乎没有限制,我的请求有什么问题
提前谢谢。您的表情需要转义
"userEnteredValue": "=REGEXMATCH(TO_TEXT(A1), \"[0-9]{4}[-][0-9]{2}[-][0-9]{2}$\")"
请注意,内部引号是转义的(\”
,而不是“
)
请注意,单引号也不起作用。是的,它起作用了,谢谢!是否可以在Create调用上添加单元格验证,或仅在Update调用上添加单元格验证?如果没有,是否有办法获取电子表格ID和creat call的sheetId?@sHamann请在文档中搜索信息或提交新问题。