В самой простой форме вы можете использовать
^(?=.*type=test).*data=(\d+)
См. Демонстрационную версию regex
При необходимости вы можете добавить границы слова / пробела позже, например
^(?=.*\btype=test\b).*\bdata=(\d+)\b
^(?=.*(?<!\S)type=test(?!\S)).*(?<!\S)data=(\d+)(?!\S)
Точка:
^
- начало строки (?=.*type=test)
- после любых 0+ символов должно быть type=test
возможно справа от текущей позиции .*
- любые 0+ символов, кроме символов разрыва строки, как можно больше data=
- строка (\d+)
- группа 1: 1+ цифр