正则表达式替换为结尾和开头没有 space 的字符串
Regex replace to a string without space at the end and beginning
我想从字符串中删除以下字符 {}, _ 并使其成为 initcap。
{OTHER_QUESTIONS,MISSING_DOCUMENT}
期望的结果:
Other Questions, Missing Document
我尝试了以下方法,但它向第一个和最后一个字符添加了 space,那么我怎样才能达到上面想要的结果?
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', ' ', 'g'),
您可以使用
SELECT INITCAP(
TRIM(
REGEXP_REPLACE(REGEXP_REPLACE('{OTHER_QUESTIONS,MISSING_DOCUMENT}', ',(\S)', ', ', 'g'), '[{}_]+', ' ', 'g')
)
)
,(\S)
正则表达式将匹配逗号并将其后的任何非白色 space 字符捕获到第 1 组中,并替换 ,
,即逗号,space 和第 1 组值。然后,[{}_]+
正则表达式将匹配所有出现的一个或多个 {
、}
和 _
字符,并且 regexp_replace 将用 space,并且 trim
将删除 leading/trailing spaces.
只需在 Regex 中删除 space,''-->'',替换为:
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', ' ', 'g')
至
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', '', 'g')
我想从字符串中删除以下字符 {}, _ 并使其成为 initcap。
{OTHER_QUESTIONS,MISSING_DOCUMENT}
期望的结果:
Other Questions, Missing Document
我尝试了以下方法,但它向第一个和最后一个字符添加了 space,那么我怎样才能达到上面想要的结果?
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', ' ', 'g'),
您可以使用
SELECT INITCAP(
TRIM(
REGEXP_REPLACE(REGEXP_REPLACE('{OTHER_QUESTIONS,MISSING_DOCUMENT}', ',(\S)', ', ', 'g'), '[{}_]+', ' ', 'g')
)
)
,(\S)
正则表达式将匹配逗号并将其后的任何非白色 space 字符捕获到第 1 组中,并替换 ,
,即逗号,space 和第 1 组值。然后,[{}_]+
正则表达式将匹配所有出现的一个或多个 {
、}
和 _
字符,并且 regexp_replace 将用 space,并且 trim
将删除 leading/trailing spaces.
只需在 Regex 中删除 space,''-->'',替换为:
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', ' ', 'g')
至
regexp_replace(INITCAP('{OTHER_QUESTIONS,MISSING_DOCUMENT}'), '[{}_]', '', 'g')