Я хочу знать, можно ли анализировать таблицу данных на поддерживаемом браузером языке. В частности, я пытаюсь разобрать данные WPA_CLI, например, ниже, после того, как он передан браузеру (т.е. Данные скрыты в абзаце HTML или что-то в этом роде).
Selected interface 'mlan0'
OK
Selected interface 'mlan0'
bssid / frequency / signal level / flags / ssid
c8:3a:35:3d:d3:20 2412 203 [WPA2-PSK-TKIP+CCMP] network1
08:ea:44:98:7c:95 2412 195 [WPA-EAP-TKIP+CCMP][WPA2-EAP-TKIP+CCMP] test
08:ea:44:98:7c:96 2412 195 [WPA-EAP-TKIP+CCMP][WPA2-EAP-TKIP+CCMP]
08:ea:44:98:7c:d5 2437 181 [WPA-EAP-TKIP+CCMP][WPA2-EAP-TKIP+CCMP] test
20:4e:7f:89:9c:e4 2417 177 [WPA2-PSK-CCMP] My Router
00:17:47:60:71:df 2412 171 [WPA-PSK-TKIP] AP with Spaces
12:18:0a:10:0e:80 2462 200 [WEP] WEP Networks Have
16:18:0a:10:0e:80 2462 199 [WEP] Two Tabs before this WTF
02:2d:fd:d9:08:09 2442 179 [WEP][IBSS] Another Network
00:18:0a:10:0e:80 2462 198 Test Network
26:18:0a:10:12:76 2447 168
Чтобы быть конкретным, wpa_cli генерирует эту таблицу из команды оболочки (которая также генерирует мой html/javascript/etc.), Однако я хочу избежать синтаксического анализа/обработки на стороне сервера, потому что у моего встроенного устройства нет необходимых ресурсов.
Например, я хочу пропустить первые 4 строки. Затем перейдите на 3 вкладки, если первые пять букв - [WPA2 или [WPA-), затем перейдите на другую вкладку и получите последнюю строку в строке и поместите ее в переменную и т.д. Как видите, данные не хорошо организованы; сеть WEP имеет две вкладки после WEP, а не все другие сети, в которых есть только одна.
Если это возможно, какова наилучшая методика для синтаксического анализа данных, сохраняя ее на стороне сервера?
Используя Javascript, я могу сначала разбить данные на строки, используя следующее:
theDataBlock.split('\n');
Затем я могу разделить каждый из этих линейных массивов на вкладки, давая мне отдельные наборы данных 4 или 5. Оттуда все это стандартное использование структур управления для управления данными.