正则表达式以匹配Golang SQL DSN

I'm having troubles matching the DSN used by golang. So I have two applications (golang and php) using the same config file, and that config file states DSN using golang dsn format, my idea is parse that dsn and use it into PHP's code. Any help on the right regexp? Thanks!

For reference the go-sql-driver project uses this to parse the dsn. They moved away from using a regex

https://github.com/go-sql-driver/mysql/blob/master/utils.go#L74

Here is the regex they used to use

https://github.com/go-sql-driver/mysql/blob/f4bf8e8e0aa93d4ead0c6473503ca2f5d5eb65a8/utils.go#L34

If you look at the commit for the new parser it has much better performance (benchmarked for go 1.2 and 1.1)

https://github.com/go-sql-driver/mysql/commit/dc029498cb5a3efbe44e54dcb5cf080d451450fa