私はこの文字列を持っていますvar1=val1&&var2=val2
。 javaの正規表現のサポートを使用して、私はこのような文字列を分割したいと思います{val1, val2}
。すなわち、得られるアレイは、val1
およびval2
を含むべきである。言い換えれば、等号で終わる単語と特殊文字& &を削除したいと思います。これらのすべてを正規表現で使いたいと思います。誰かが私にこれを助けてくれますか?あなただけのsplit()
を使用することができこの文字列を分割する(var1 = val1 && var2 = val2)Javaの正規表現を使用
-2
A
答えて
1
彼は正規表現を求めます。..ので、ここでは、あなたがそれを行う方法です。
提供正規表現は変数が長いだけで2変数(ある場合のみですIEの場合、分割する文字列は入力したパターンとまったく同じです)。 Regex for javaの では、PatternクラスとMatcherクラスを使用します。
String[] vars = {"", ""};
String toCheck = "var1=val1&&var2=val2";
Pattern p = Pattern.compile(".*?=(.*?).*?=(.*$)");
Matcher m = p.matcher(toCheck);
while(m.find()){
vars[0] = m.group(1);
vars[1] = m.group(2);
}
私が使用する非常に便利なツールは、このです:http://myregexp.com/signedJar.htmlあなたは完全にはregexで理解していない場合
そのハードその周りにあなたの頭を取得します..しかし、それだけであなたの時間とテスト物事を取りますJavaアプレット^あなたの正規表現をリアルタイムでコンパイルし、本当に有益です。)
注:正規表現は、「var1」、「var2」、「val1」および「val2」が何であっても一致します。 EG:それは一致します:ユーザ名= derpa & &パスワード=ヘルパ
と出力が配列のようなものになるだろう:運の{derpa、ヘルパ}
最高..私は私が使う今、正規表現を嫌っそれらすべての時間:複数の変数のためのD
[EDIT]
が、これは私がそれを行うだろうかです:
ArrayList<String> vars = new ArrayList<String>();
String toCheck = "var1=val1&&var2=val2&&var3=val3&&var4=val4";
Pattern p = Pattern.compile("(.*?)=(.*?)&&|(.*?)=(.*?)$");
Matcher m = p.matcher(toCheck);
while(m.find()){
String val = m.group(2);
if(val == null)
vars.add((m.group(4)));
else
vars.add(val);
}
for(int j = 0; j < vars.size(); j++){
System.out.println(vars.get(j));
}
これはテストされ、動作します。
3
:
public static void main(String[] args) throws Exception {
String s = "var1=val1&&var2=val2";
String[] exp = s.split("&&");
String[] values = new String[] {exp[0].split("=")[1], exp[1].split("=")[1]};
System.out.println(Arrays.deepToString(values)); //prints [val1, val2]
}
関連する問題
- 1. 正規表現の分割文字列
- 2. 分割文字列の正規表現
- 3. この文字列を分割する正規表現
- 4. 分割文字列は、正規表現
- 5. 正規表現を使用してjavaで文字列を分割する
- 6. 正規表現を使用してJavaで文字列を分割する
- 7. 正規表現を使用してPHP分割文字列
- 8. Javaの正規表現の分割文字列
- 9. スプリットのトラブル分割文字列(正規表現)は、Java
- 10. 正規表現のJava分割文字列
- 11. 文字列Javaで正規表現を使用して分割しますか?
- 12. 正規表現を使用してJavaで数値文字列を分割
- 13. 正規表現Java文字列単一アスタリスクで分割
- 14. キャレットケースの文字列を正規表現で分割する
- 15. Pythonの正規表現を使用して文字列を分割する
- 16. c#文字列のフィルタリングと正規表現による分割
- 17. パターンで文字列から配列を取得 - KEY1:val1と、VAL2、...; KEY2:val1と、
- 18. 文字列をキー値で正規表現で分割する
- 19. 正規表現:文字列をグループに分割する
- 20. 正規表現を文字列から分割する
- 21. 文字列をグループに分割する正規表現
- 22. JS文字列を正規表現で分割する
- 23. 文字列を分割する複雑な正規表現
- 24. Goで正規表現を使用して文字列を分割する
- 25. 正規表現を使用して柔軟に文字列を分割する
- 26. カスタム正規表現を使用して文字列を分割する
- 27. 正規表現を使用して文字列を分割する
- 28. 正規表現を使用して文字列をスペースで分割する
- 29. VBA正規表現を使用して文字列を分割する
- 30. キーワードを使用して文字列を分割する正規表現
正規表現が必要なのはなぜですか?値に '&&'が含まれていないことがわかっている場合は、単純な文字列置換を '、'にして、中括弧の前に追加して追加することができます。 – Viruzzo