正規表現とグループを使用して、Javaでこれらのシナリオを照合したいのですが、正規表現があまり得意ではなく、次のような繰り返しを照合する方法がわかりません。
テキスト:ローカルvar1、var2、var3 = 100
すべてのlua変数名を取得するために一致させたいので、一致するものは「var1」と「var2」と「var3」になります。
テキスト:self.var1、self.var2 = 200
上記と同じですが、localの代わりにselfを使用しています-「var1」と「var2」の一致が必要です
そして最後にテキスト:var1、var2、var3 = 300
これには最初の正規表現を使用できるかもしれないと思いますよね?これらすべてが機能するように、1つ以上の一致で一致を機能させたいのですが。
var1 = 10
var1、var2 = 10
self.v = 1
self.v1、self.v2 = 20
ローカルv1、v2 = 10
ローカルv1 = 30
1つの大きな正規表現でこれらすべてを必要としない場合、2つまたは3つの異なるパターンが機能します。(表示するコードが実際にはないので、このタイプの質問が適切であることを願っています...)
前もって感謝します!
私はこのようなものがうまくいくはずだと思います
String input = "...Your input...";
List<String> matches = new ArrayList<>();
Matcher m = Pattern.compile("(\\w+)\\s*(?=[,=])").matcher(input);
while(m.find()) {
matches.add(m.group(1));
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加