[英](JS) Google Script App Search / Filter for keyword
我被這件事難住了一段時間。 我對谷歌腳本應用程序相當陌生,想看看是否有辦法做到這一點。 到目前為止,我在 Google Sheet 中使用了一些方法,但似乎無法正常工作。
下面的代碼確實為我提供了所有數據的輸出,但是,嵌套在data.custom_fields[x]
中的數據具有多個由“,”分隔的對象。 我希望能夠過濾掉其他關鍵詞,只使用"display_value="
中的任何內容。 display_value=
並不總是在同一個區域,所以必須搜索它們。
我假設這里會使用某種 If 語句..
該對象的一個示例是:
{type=x, resource_subtype=x, created_by={name=x, gid=x, resource_type=x}, display_value=Cool Value, description=x, enabled=x, resource_type=custom_field, gid=x, enum_options=[x.lang.Object;x, enum_value={x}, name=x}
我也嘗試過split
功能,但不確定如何過濾掉我需要的單詞。
function Users() {
var options = {
"headers" : {
"Authorization": "API Key here"
}
}
var response = UrlFetchApp.fetch("URL here", options);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheets = ss.getSheets();
var sheet = ss.getSheetByName("Tab Name here"); // specific sheet name getSheetByName(""); alternatively use ss.getActiveSheet()
var dataAll = JSON.parse(response.getContentText()); //
var dataSet = dataAll.data; // "data" is the key containing the relevant objects
var rows = [],
data;
for (i = 0; i < dataSet.length; i++) {
data = dataSet[i];
rows.push([
data.gid,
data.name,
data.permalink_url,
data.due_on,
data.custom_fields[1],
data.custom_fields[2],
data.custom_fields[4],
data.custom_fields[5],
data.custom_fields[6],
data.custom_fields[7],
data.custom_fields[8],
data.custom_fields[9],
]); //your JSON entities here
}
// [row to start on], [column to start on], [number of rows], [number of entities]
dataRange = sheet.getRange(2, 1, rows.length, 12);
dataRange.setValues(rows);
先感謝您!
如果要提取 display_value,請嘗試
let myVal = myData.match(/(?<=display_value=)[^,]+/g)[0]
我猜 myData 可能是 data.custom_fields[5],所以將其替換為
data.custom_fields[5].match(/(?<=display_value=)[^,]+/g)[0]
盡管它們以 , 分隔,
但這只是它們在日志中的顯示方式。 因為您使用的是JSON.parse
,所以您正在接收/轉換為對象,而不是字符串。
因為data.custom_fields
是一個對象數組,所以您可以通過以下方式訪問屬性/鍵值: data.custom_fields[x].display_value
。
學到更多:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.