select initcap('r. lópez viña tondonia Rioja White Viña');
在我们的Postgres版本(9.0.7)中,这确实给出了正确的答案(R. López Viña Tondonia Rioja White Viña)。
票数 10
EN
Stack Overflow用户
发布于
2018-04-16 04:58:45
initcap函数将特殊字符(破折号、撇号等)后面的字母大写。我只想在空格后大写。
与Denis的答案类似,此函数将转换每个单词的第一个字母(以空格分隔)
代码语言:
javascript
复制
CREATE OR REPLACE FUNCTION titlecase(instr varchar) RETURNS varchar AS $$
DECLARE
strarray varchar[] := string_to_array(inStr, ' ');
outstrarray varchar[];
word varchar;
BEGIN
FOREACH word IN ARRAY strarray