The current regex doesn't take into account variable assignments with casting (e.g. (type)var = value;)
Implementing a regex to match all cases (e.g. (type)var, (type) var, (type)(var), (type)(var->value)->value) would probably result in an illegible regex.
I've modified the code to match any line like txt = txt. It checks that the equal sign is not within parens (like for while (var = value)) and that it isn't in a string.
I've added test cases and used it to format all files in my minishell project with great success.
The current regex doesn't take into account variable assignments with casting (e.g.
(type)var = value;
)Implementing a regex to match all cases (e.g.
(type)var
,(type) var
,(type)(var)
,(type)(var->value)->value
) would probably result in an illegible regex.I've modified the code to match any line like
txt = txt
. It checks that the equal sign is not within parens (like forwhile (var = value)
) and that it isn't in a string.I've added test cases and used it to format all files in my minishell project with great success.
Let me know if the code needs anything changed.