Для наших проектов C++ платформы Windows я использую VLD, Визуальный Детектор Утечки, который почти слишком легок для реализации, который отслеживает и сообщает относительно утечек памяти, когда приложение выходит - лучший из всех, его свободное и источник доступны. Система может быть установкой для создания отчетов различными способами (дисковый регистратор, IDE, XML и т.д.) и была неоценима для обнаружения утечек в Windows Services, который всегда является проблемой отладить. Таким образом, при поиске портативного решения если Вы желаете к самокрутке, можно, конечно, просмотреть источник для руководства. Надежда это помогает.
Для заключения в кавычки сайта:
Это - очень эффективный способ быстро диагностировать, и зафиксировать, утечки памяти в приложениях C/C++.
Вы можете использовать регулярное выражение в find:
def list = ["blach blah blah", "SELECT something", "some more text", "some more text"]
def item = list.find { it ==~ /SELECT \w+/ }
assert item == "SELECT something"
list[1] = "SELECT somethingelse"
item = list.find { it ==~ /SELECT \w+/ }
assert item == "SELECT somethingelse"
def list = ["blach blah blah", "SELECT something", "some more text", "some more text"]
def index = list.findIndexOf { it ==~ /SELECT \w+/ }
This will return the index of the first item that matches the regex /SELECT \w+/
. If you want to obtain the indices of all matching items replace the second line with
def index = list.findIndexValues { it ==~ /SELECT \w+/ }