用空格填充标点符号和其他非字母数字字符
问题描述:
我想用空格||替换所有非字母数字字符(如逗号) this_character ||空间。 所以执行查询后:用空格填充标点符号和其他非字母数字字符
SELECT 'the quick, brown, fox jumps over the lazy dog'
我想获得以下输出:
the quick , brown , fox jumps over the lazy dog
答
您可以使用此之前,和任何非字母数字字符后(非白色插入空格空间),独立于在该位置是否已经存在空间:
SELECT regexp_replace('the quick, brown, fox jumps over the lazy dog',
E'[^\\w\\s]', E' \\& ', 'g')
如果在字符串的开始处有一个逗号,该怎么办?是否应该在它之前插入空格? – trincot
是的,在任何情况下 – Borys
只是不是当已经有一个空间,就像在逗号后面的例子?或者你想要插入第二个空间吗? – trincot