Most of what I see in your example is {column value} should be greater than or equal to 0. You can create a simple parser with [regular expressions][1];regular expressions; the following [regular expression][1]regular expression would capture it:
(See [Regular Expression Language - Quick Reference | Microsoft Docs][2]Regular Expression Language - Quick Reference | Microsoft Docs)
After a [Match()][3]Match() on DEFINITION, you can use [.Groups][4][[groupname]][5].Groups[groupname] on the returned [Match][6]Match. Use [Success][7]Success property to check whether a group was matched. Use [Value][8]Value to get the matched value as a string.
These can be used to build [Expressions][9]Expressions:
Note: this is whiteboard quality code; I currently don't have the equipment to compile or run the code. [1]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex?view=netframework-4.7.2 "Regex Class (System.Text.RegularExpressions) | Microsoft Docs" [2]: https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference?view=netframework-4.7.2 "Regular Expression Language - Quick Reference | Microsoft Docs" [3]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.regex.match?view=netframework-4.7.2#System_Text_RegularExpressions_Regex_Match_System_String_ "Regex.Match Method (System.Text.RegularExpressions) | Microsoft Docs" [4]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.match.groups?view=netframework-4.7.2#System_Text_RegularExpressions_Match_Groups "Match.Groups Property (System.Text.RegularExpressions) | Microsoft Docs" [5]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.groupcollection.item?view=netframework-4.7.2#System_Text_RegularExpressions_GroupCollection_Item_System_String_ "GroupCollection.Item[String] Property (System.Text.RegularExpressions) | Microsoft Docs" [6]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.match?view=netframework-4.7.2 "Match Class (System.Text.RegularExpressions) | Microsoft Docs" [7]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.group.success?view=netframework-4.7.2#System_Text_RegularExpressions_Group_Success "Group.Success Property (System.Text.RegularExpressions) | Microsoft Docs" [8]: https://docs.microsoft.com/en-us/dotnet/api/system.text.regularexpressions.capture.value?view=netframework-4.7.2#System_Text_RegularExpressions_Capture_Value "Capture.Value Property (System.Text.RegularExpressions) | Microsoft Docs" [9]: https://docs.microsoft.com/en-us/dotnet/api/system.linq.expressions.expression?view=netframework-4.7.2 "Expression Class (System.Linq.Expressions) | Microsoft Docs"