suffix := 'Jr.';
temp := REGEXP_REPLACE( temp, E'JR\.?\\s*', '', 'i' );
END IF;
+ IF temp ilike '%JR,%' THEN
+ suffix := 'Jr.';
+ temp := REGEXP_REPLACE( temp, E'JR,\\s*', ',', 'i' );
+ END IF;
IF temp ilike '%SR%' THEN
suffix := 'Sr.';
temp := REGEXP_REPLACE( temp, E'SR\.?\\s*', '', 'i' );
END IF;
+ IF temp ilike '%SR,%' THEN
+ suffix := 'Sr.';
+ temp := REGEXP_REPLACE( temp, E'SR,\\s*', ',', 'i' );
+ END IF;
IF temp ~ E'\\sII$' THEN
suffix := 'II';
temp := REGEXP_REPLACE( temp, E'II$', '', 'i' );
suffix := 'III';
temp := REGEXP_REPLACE( temp, E'III$', '', 'i' );
END IF;
+ IF temp ~ E'\\sIV$' THEN
+ suffix := 'IV';
+ temp := REGEXP_REPLACE( temp, E'IV$', '', 'i' );
+ END IF;
family_name := BTRIM( REGEXP_REPLACE(temp,E'^([^,]*)\\s*,.*$',E'\\1') );
first_given_name := BTRIM( CASE WHEN temp ~ ',' THEN REGEXP_REPLACE(temp,E'^[^,]*\\s*,\\s*([^,\\s]*)\\s*.*$',E'\\1') ELSE 'N/A' END );