正規表現を使用してJavaのクラス宣言行を解析する必要があります。Javaのクラス宣言行を解析する正規表現
String line = "public class ActionDiagramReader extends XReader implements ActionHandler, Action {";
String line = "public class ActionDiagramReader extends XReader{";
私はこの正規表現
String regExp = ".*class\\s+(\\w+)(\\s+extends\\s+(\\w+))?(\\s+implements\\s+(\\w|,)+)?\\{.*$";
Pattern pattern = Pattern.compile(regExp, Pattern.DOTALL | Pattern.CASE_INSENSITIVE | Pattern.MULTILINE);
Matcher match = pattern.matcher(line1);
を使用しようとしています。しかし、この正規表現は、クラス名/エクステンダクラス名/実装者のCLAS-名を解析する失敗。指定された行に関連するすべてのクラス&のインタフェースを識別する必要があります。
正規表現に誤りがあります。 ありがとうございます
これは何の目的ですか? – Sap
アプリケーションのEclipseエディタでクラス名の色を付ける必要があります – Kishore
(?<= public class \ s)。*?(?= \ s)と(?<= extend \ s)。*のようなものを使用できませんか? (?= [\ s {])ただの考え – Sap