Вставка таблицы данных из веб-браузера в виде массива Javascript
Некоторое время назад я видел видео, в котором парень просто выделил всю текстовую таблицу в интернет-браузере, вставил ее в редактор, а затем запустил какой-то плагин / инструмент, который автоматически преобразовывал текст в массив реальных объектов. Я не уверен, какой редактор он использовал (вероятно, vim) или даже какой язык, но я бы хотел иметь это сейчас для создания массива объектов JS, предпочтительно в коде Visual Studio, но я не могу найти его для любого редактора, Я, что для преобразования таблицы, как на этой странице, что-то вроде этого:
var MACHINE_TYPES = [
{ name:"IMAGE_FILE_MACHINE_UNKNOWN", value:0x0, description:"The contents of this field are assumed to be applicable to any machine type"},
{ name:"IMAGE_FILE_MACHINE_I386 ", value:0x14c , description:"Intel 386 or later processors and compatible processors"},
];
просто вставив и указав имена столбцов.
2 ответа
Я не знаю, как это сделать в Visual Studio Code, но быстрый поиск дал мне этот HTML Table To JSON Converter. Быстро скопировав таблицу HTML из вашей ссылки Microsoft и загрузив ее на этот сайт, вы получили ожидаемые результаты:
[
{
"Constant": "IMAGE_FILE_MACHINE_UNKNOWN",
"Value": 0,
"Description": "The contents of this field are assumed to be applicable to any machine type"
},
{
"Constant": "IMAGE_FILE_MACHINE_AM33",
"Value": 13,
"Description": "Matsushita AM33"
},
{
"Constant": "IMAGE_FILE_MACHINE_AMD64",
"Value": 8664,
"Description": "x64"
},
{
"Constant": "IMAGE_FILE_MACHINE_ARM",
"Value": 10,
"Description": "ARM little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_ARM64",
"Value": 64,
"Description": "ARM64 little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_ARMNT",
"Value": 14,
"Description": "ARM Thumb-2 little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_EBC",
"Value": 0e,
"Description": "EFI byte code"
},
{
"Constant": "IMAGE_FILE_MACHINE_I386",
"Value": 14,
"Description": "Intel 386 or later processors and compatible processors"
},
{
"Constant": "IMAGE_FILE_MACHINE_IA64",
"Value": 200,
"Description": "Intel Itanium processor family"
},
{
"Constant": "IMAGE_FILE_MACHINE_M32R",
"Value": 9041,
"Description": "Mitsubishi M32R little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_MIPS16",
"Value": 266,
"Description": "MIPS16"
},
{
"Constant": "IMAGE_FILE_MACHINE_MIPSFPU",
"Value": 366,
"Description": "MIPS with FPU"
},
{
"Constant": "IMAGE_FILE_MACHINE_MIPSFPU16",
"Value": 466,
"Description": "MIPS16 with FPU"
},
{
"Constant": "IMAGE_FILE_MACHINE_POWERPC",
"Value": 10,
"Description": "Power PC little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_POWERPCFP",
"Value": 11,
"Description": "Power PC with floating point support"
},
{
"Constant": "IMAGE_FILE_MACHINE_R4000",
"Value": 166,
"Description": "MIPS little endian"
},
{
"Constant": "IMAGE_FILE_MACHINE_RISCV32",
"Value": 5032,
"Description": "RISC-V 32-bit address space"
},
{
"Constant": "IMAGE_FILE_MACHINE_RISCV64",
"Value": 5064,
"Description": "RISC-V 64-bit address space"
},
{
"Constant": "IMAGE_FILE_MACHINE_RISCV128",
"Value": 5128,
"Description": "RISC-V 128-bit address space"
},
{
"Constant": "IMAGE_FILE_MACHINE_SH3",
"Value": 12,
"Description": "Hitachi SH3"
},
{
"Constant": "IMAGE_FILE_MACHINE_SH3DSP",
"Value": 13,
"Description": "Hitachi SH3 DSP"
},
{
"Constant": "IMAGE_FILE_MACHINE_SH4",
"Value": 16,
"Description": "Hitachi SH4"
},
{
"Constant": "IMAGE_FILE_MACHINE_SH5",
"Value": 18,
"Description": "Hitachi SH5"
},
{
"Constant": "IMAGE_FILE_MACHINE_THUMB",
"Value": 12,
"Description": "Thumb"
},
{
"Constant": "IMAGE_FILE_MACHINE_WCEMIPSV2",
"Value": 169,
"Description": "MIPS little-endian WCE v2"
}
]
Я нашел Text Power Tools, которые позволяют заменять текст через командную палитру с помощью регулярных выражений, но это довольно проблематично из-за более сложных преобразований, поэтому я использовал страницу RegEx, используя следующую формулу для соответствия:
`(.*)\s(.*)\s(.*)\s`
и для замены
{name:$1, value:$2, description:"$3"},\n