我不认为我今天喝了足够的咖啡,但出于某种原因坚持了下来。
试图获取每个单词的第一个字母,除了几个停用词。
示例“美利坚合众国”->“美国”
select regexp_matches('The United States of America', '\y(?!(the|of)\y)\w', 'gi')
工作正常,但它返回setof text[]
.
如何将其转换为简单的字符串?还是有比这更好的方法regexp_matches
?
我不认为我今天喝了足够的咖啡,但出于某种原因坚持了下来。
试图获取每个单词的第一个字母,除了几个停用词。
示例“美利坚合众国”->“美国”
select regexp_matches('The United States of America', '\y(?!(the|of)\y)\w', 'gi')
工作正常,但它返回setof text[]
.
如何将其转换为简单的字符串?还是有比这更好的方法regexp_matches
?
一些选项:
SQL小提琴。
选项 2 在任意数量的空白处拆分。与您的正则表达式不完全相同。选项 3 在单个空格字符
上拆分。如果您可以依赖它(?),查询会更便宜。
小提琴