Skip to content

Commit 42f2214

Browse files
committed
add field split pattern
1 parent a8d3a32 commit 42f2214

2 files changed

Lines changed: 11 additions & 3 deletions

File tree

core/src/main/java/com/dtstack/flink/sql/table/AbstractTableParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ public boolean dealKeyPattern(String fieldRow, AbstractTableInfo tableInfo){
8585
}
8686

8787
public void parseFieldsInfo(String fieldsInfo, AbstractTableInfo tableInfo){
88-
88+
// TODO 替换
8989
List<String> fieldRows = DtStringUtil.splitIgnoreQuota(fieldsInfo, ',');
9090
for(String fieldRow : fieldRows){
9191
fieldRow = fieldRow.trim();

core/src/main/java/com/dtstack/flink/sql/util/DataTypeUtils.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@
22

33
import com.google.common.collect.Iterators;
44
import com.google.common.collect.Lists;
5-
import org.apache.flink.api.common.typeinfo.TypeInfo;
65
import org.apache.flink.api.common.typeinfo.TypeInformation;
76
import org.apache.flink.api.java.tuple.Tuple2;
87
import org.apache.flink.api.java.typeutils.RowTypeInfo;
98
import org.apache.flink.shaded.guava18.com.google.common.base.Splitter;
109
import org.apache.flink.table.api.Types;
11-
import scala.reflect.macros.TypecheckException;
1210

1311
import java.util.ArrayList;
1412
import java.util.regex.Matcher;
@@ -27,6 +25,11 @@ public class DataTypeUtils {
2725
private final static char FIELD_DELIMITER = ',';
2826
private final static char TYPE_DELIMITER = ' ';
2927

28+
private final static Pattern COMPLEX_TYPE_PATTERN = Pattern.compile("^\\s*(\\w+)\\s+(.+?<.+>)\\s*,");
29+
private final static Pattern ATOMIC_TYPE_PATTERN = Pattern.compile("^\\s*(\\w+)\\s+(\\w+)\\s*,");
30+
private final static Pattern TAIL_PATTERN = Pattern.compile("^\\s*(\\w+)\\s+(.+?<.+>)\\s*");
31+
private final static Pattern ATOMIC_TAIL_PATTERN = Pattern.compile("^\\s*(\\w+)\\s+(\\w+)\\s*");
32+
3033
private DataTypeUtils() {}
3134

3235
public static TypeInformation convertToCollectionType(String string) {
@@ -154,4 +157,9 @@ public static TypeInformation convertToAtomicType(String string) {
154157
throw new RuntimeException("type " + string + "not supported");
155158
}
156159
}
160+
161+
public static void splitFields(String fieldStmt) {
162+
// TODO 可以把每轮字符流开始的空白字符去掉。
163+
164+
}
157165
}

0 commit comments

Comments
 (0)