public class Lexer extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
static int |
LANG_TYPE_DEFAULT
这个LANG_TYPE_DEFAULT是没有注释的,所有字符串都需要自行分析
|
static int |
LANG_TYPE_JAVA
java c++ 的注释方式 用 // 单行注释,/* 多行注释
|
static int |
LANG_TYPE_SQL
SQL 的注释方式 用 -- 单行注释,/* 多行注释
|
| 构造器和说明 |
|---|
Lexer() |
Lexer(int langType) |
Lexer(String sFormula) |
Lexer(String sFormula,
int langType) |
| 限定符和类型 | 方法和说明 |
|---|---|
int |
findWord(String aword,
boolean caseSensitives,
boolean skipAnnotate) |
String |
getARawWord() |
String |
getARawWord(boolean bAcceptOpt) |
String |
getARegularWord() |
String |
getAString() |
String |
getAWord()
过滤掉 注释
系统支持两种注释, c++(java) // /*
sql -- /*
|
String |
getAWord(boolean bAcceptOpt) |
String |
getBuffer(int bp,
int ep) |
int |
getCurrPos() |
static String |
getFirstWord(String str) |
static String |
getFirstWord(String str,
int langType) |
int |
getNoteType() |
String |
getStringUntil(String szBreak) |
boolean |
isCanAcceptOpt() |
static boolean |
isConstValue(CharSequence seq) |
static boolean |
isLabel(CharSequence seq)
isLabel 判断一个字符串是否符合标识符,是否可以作为字段名或者表名
|
static boolean |
isSingleWord(String str) |
void |
resetToBegin() |
boolean |
seekTo(char cSplit) |
boolean |
seekTo(String aword,
boolean skipAnnotate) |
void |
seekToAnnotateEnd()
将解释位置滑动到注释结束位置 '*'+'/'
|
void |
seekToLineEnd() |
boolean |
seekToRightBrace()
移动到下一个},自动跳过之间的{}括号对
|
boolean |
seekToRightBracket()
移动到下一个),自动跳过之间的()括号对
|
boolean |
seekToRightSquareBracket()
移动到下一个],自动跳过之间的[]括号对
|
void |
setCanAcceptOpt(boolean canAcceptOpt) |
void |
setColonInLable(boolean colonInLable) |
void |
setFormula(String sFormula) |
void |
setNoteType(int noteType)
设置注释类别
|
boolean |
setPosition(int newPos) |
void |
skipAOperand() |
static List<String> |
splitByWord(String sourceString,
String splitWord)
将一个字符串按照 某个单词分割,或略 括号 和 “” 中 相同的单词
|
static Object |
toConstValue(String seq) |
void |
writeBackAWord(String preWord) |
public static final int LANG_TYPE_DEFAULT
public static final int LANG_TYPE_JAVA
public static final int LANG_TYPE_SQL
public Lexer()
public Lexer(String sFormula)
public Lexer(int langType)
public Lexer(String sFormula, int langType)
public void setColonInLable(boolean colonInLable)
public static boolean isConstValue(CharSequence seq)
public static boolean isLabel(CharSequence seq)
seq - CharSequencepublic static List<String> splitByWord(String sourceString, String splitWord)
sourceString - sourceStringsplitWord - splitWordpublic static boolean isSingleWord(String str)
public void writeBackAWord(String preWord)
public void setFormula(String sFormula)
public boolean isCanAcceptOpt()
public void setCanAcceptOpt(boolean canAcceptOpt)
public int getCurrPos()
public String getARawWord()
public String getAString()
public String getARegularWord()
public String getAWord()
public String getAWord(boolean bAcceptOpt)
public String getARawWord(boolean bAcceptOpt)
public void seekToLineEnd()
public void seekToAnnotateEnd()
public boolean seekToRightBracket()
public boolean seekToRightSquareBracket()
public boolean seekToRightBrace()
public void skipAOperand()
public void resetToBegin()
public boolean setPosition(int newPos)
public boolean seekTo(char cSplit)
public boolean seekTo(String aword, boolean skipAnnotate)
public String getBuffer(int bp, int ep)
public int findWord(String aword, boolean caseSensitives, boolean skipAnnotate)
aword - awordcaseSensitives - caseSensitivesskipAnnotate - skipAnnotatepublic int getNoteType()
public void setNoteType(int noteType)
noteType - 0 无 1 java 2 sqlCopyright © 2025 姹熻嫃鍗楀ぇ鍏堣吘淇℃伅浜т笟鑲′唤鏈夐檺鍏徃. All rights reserved.