Postgresql 如何在忽略所有其他字符的情况下解析postgres中的整数或小数?

Postgresql 如何在忽略所有其他字符的情况下解析postgres中的整数或小数?,postgresql,Postgresql,如何仅解析混合字段的数值。说“11英尺”,我只想得到11英尺 SELECT CAST(nullif('11 ft', '') AS integer); ERROR: invalid input syntax for integer: "11 ft" 如果您的目标是从字符串中获取第一个整数,则可以使用: SELECT substring('11 ft' FROM E'-?[[:digit:]]+')::integer; substring ----------- 11 (

如何仅解析混合字段的数值。说“11英尺”,我只想得到11英尺

SELECT CAST(nullif('11 ft', '') AS integer);
ERROR:  invalid input syntax for integer: "11 ft"

如果您的目标是从字符串中获取第一个整数,则可以使用:

SELECT substring('11 ft' FROM E'-?[[:digit:]]+')::integer;

 substring 
-----------
        11
(1 row)

如果不想解析减号,请删除
-?

谢谢!这适用于我的具体情况,方法“E”是什么?扩展字符串语法。在这种情况下没有必要。