@Override
    public Object parse(SourceData sourceData, int rowIndex, Context context) {
        if (inputStringParser == null || patternStringParser == null) {
            return null;
        }
        String inputString = OperatorTools.parseString(inputStringParser.parse(sourceData, rowIndex, context));
        String patternString = OperatorTools.parseString(patternStringParser.parse(sourceData, rowIndex, context));
        Pattern pattern = Pattern.compile(patternString);
        Matcher matcher = pattern.matcher(inputString);
        if (matcher.find()) {
            return matcher.group(0);
        } else {
            return null;
        }
    }
RegexpReplaceFunction  ->  REGEXP_SUBSTR(str, regexp)
description:
- Return NULL if any of the arguments are NULL or regexp if invalid or pattern is not found
- Return the first substring in 'str' that matches 'regexp'
inlong-sdk/transform-sdk/src/main/java/org/apache/inlong/sdk/transform/process/function/string/RegexpSubstrFunction.java