Попробуйте это:
^(int|[sS]tring)\s+\w+\s*(=\s*[^,]+)?(,\s*\w+\s*(=\s*[^,]+)?)*$
Это будет соответствовать вашему примеру кода
int i,k = 10,l=0
И, сделав несколько предположений относительно языка, который вы можете или не можете использовать, он также будет соответствовать:
int i, j, k=10, l=0
string i=23, j, k=10, l=0