我遇到了与golang使用的DSN相匹配的问题。所以我有两个应用程序(golang和php)使用相同的配置文件,并且该配置文件使用golang dsn格式声明DSN,我的想法是解析dsn并将其用于PHP的代码。正确的regexp有什么帮助吗? 谢谢!
答案 0 :(得分:3)
作为参考,go-sql-driver项目使用它来解析dsn。他们放弃了使用正则表达式
https://github.com/go-sql-driver/mysql/blob/master/utils.go#L74
以下是他们过去使用的正则表达式
https://github.com/go-sql-driver/mysql/blob/f4bf8e8e0aa93d4ead0c6473503ca2f5d5eb65a8/utils.go#L34
如果你看一下新解析器的提交,它会有更好的性能(基于1.2和1.1进行基准测试)
https://github.com/go-sql-driver/mysql/commit/dc029498cb5a3efbe44e54dcb5cf080d451450fa