Я использовал это регулярное выражение для построения Notepad++ списка функций и процедур в SQL файле.
Вызывается командой: Вид\Список функций.
Так как в Notepad++ нет встроенного парсера для SQL кода, то пришлось написать свой. Чтобы его встроить в Notepad++ :
Откройте файл functionList.xml расположенный в пользовательской директории C:\Users\xxxxx\AppData\Roaming\Notepad++ или если при установке вы выбрали чтобы все настройки сохранялись в папке установки, то в C:\Program Files (x86)\Notepad++
Найдите элемент <associationMap>
и добавьте в него (между <associationMap> ....</associationMap>
) строчку
<association id= \"T-SQL_func\" langID=\"17\"/>
Найдите элемент <parsers>
и добавьте в него (между <parsers> ....</parsers>
) строки
<!-- T-SQL -->
<parser displayName="T-SQL" id="T-SQL_func" commentExpr="(?s:/\*.*?\*/)|(?m-s:--.*?$)">
<function mainExpr='(?im)^\h*(create|alter)\s+(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?'
displayMode="$functionName">
<functionName>
<nameExpr expr='(?im)(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?' />
</functionName>
</function>
</parser>
Пользуйтесь!
Used for the Functionion List Notepad++:
Open of the functionList.xml file in Users\xxxxx\AppData\Roaming\Notepad++ directories
Add in element <associationMap>
<association id= \"T-SQL_func\" langID=\"17\"/>
Add in element <parsers>
<!-- T-SQL -->
<parser displayName="T-SQL" id="T-SQL_func" commentExpr="(?s:/\*.*?\*/)|(?m-s:--.*?$)">
<function mainExpr='(?im)^\h*(create|alter)\s+(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?'
displayMode="$functionName">
<functionName>
<nameExpr expr='(?im)(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?' />
</functionName>
</function>
</parser>