通常,当我替换换行符时,我会跳转到正则表达式,就像在这个 PHP 中一样
preg_replace('/\R/u', "\n", $String);
因为我知道这是替换任何类型的 Unicode 换行符(无论是 \n、\r、\r\n 等)的一种非常持久的方法
我也在尝试在 Go 中做这样的事情,但我得到了
解析正则表达式时出错:转义序列无效:
\R
在这条线上
msg = regexp.MustCompilePOSIX("\\R").ReplaceAllString(html.EscapeString(msg), "<br>\n")
我尝试使用(?:(?>\r\n)|\v)
https://stackoverflow.com/a/4389171/728236 ,但看起来 Go 的正则表达式实现也不支持它,恐慌invalid or unsupported Perl syntax: '(?>'
什么是替换 Go 中的换行符的好、安全的方法,Regex 与否?
我在这里看到这个答案Golang:Issues replacing newlines in a string from a text file saying to use \r?\n
,但我犹豫是否相信它会得到所有Unicode 换行符,主要是因为这个问题的答案列出了比覆盖的3个\r?\n
,
大话西游666
心有法竹
相关分类