Swift Regular Expression
|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]* ( |([!#-'*-+\--.0-9A-Z\^-z|~]|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]* |/[+\--9A-Z_a-z~]*([!#-'*\^`|]|==*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]* )*(|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*(|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*)|([!#-'*-+\--.0-9A-Z\^-z|~]|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]*|/[+\--9A-Z_a-z~]*(|==*|([!#-'*\^`|]|==*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]*))
POSIX Extended Regular Expression
|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*|[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]* ( |([!#-'*-+\--.0-9A-Z\^-z|~]|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]* |/[+\--9A-Z_a-z~]*([!#-'*\^`|]|==*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]* )*(|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*(|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*)|([!#-'*-+\--.0-9A-Z\^-z|~]|((,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|\u{9}[\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")((,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*"|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~]([!#-'*-+\--.0-9A-Z\^-z|~]|(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~])*(,|[\u{9} ][\u{9} ]*,)[\u{9} ]*[!#-'*-+\--.0-9A-Z\^-z|~][!#-'*-+\--.0-9A-Z\^-z|~]*(=|[\u{9} ][\u{9} ]*=)[\u{9} ]*"([\u{9} -!#-\[\]-~\u{80}-\u{FF}]|\\[\u{9} -~\u{80}-\u{FF}])*")*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]*|/[+\--9A-Z_a-z~]*(|==*|([!#-'*\^`|]|==*[!#-'*-+\--.0-9A-Z\^-z|~])[!#-'*-+\--.0-9A-Z\^-z|~]*))