Значение result
будет количеством совпадений регулярного выражения.В отсутствие опции -all
это всегда будет 0 или 1 (т.е. не найден / найден).
В целом, это регулярное выражение (которое хорошо объясняет ответ @ kostix) действительно ужасно, хотя,RE являются мощным инструментом, но их очень легко спутать с ними.Более того, если вы разбиваете вывод на новые строки, вам не нужно пытаться исключить их в совпадении RE;в этом случае определенно не будет новых строк в результате split
.
Если бы мы лучше поняли, что вы пытаетесь сделать, мы могли бы направить вас к гораздо более эффективным методамсопоставление (например, использование lsearch
с подходящими параметрами, загрузка данных в базу данных SQLite в памяти).