我有這個字符串var1=val1&&var2=val2
。使用java的正則表達式支持,我想分割像這樣的字符串{val1, val2}
。即得到的陣列應該包含val1
和val2
。換句話說,我想刪除以等號結尾的單詞和特殊字符& &,我想用正則表達式完成所有這些操作。有人可以幫我解決這個問題嗎?在java中使用正則表達式分割此字符串(var1 = val1 && var2 = val2)
-2
A
回答
1
他是要求正則表達式..所以這裏是你如何做到這一點:
提供的正則表達式是隻有當變量只有2個變量長( IE,要拆分的字符串遵循與您提供的完全相同的模式)。 對於正則表達式在Java中,您使用模式和匹配器類。
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
,如果你不完全瞭解正則表達式,它很難讓你的頭左右..但只是把你的時間和測試的東西出來與Java applet ^。它實時編譯你的正則表達式,是真正的信息=)
*注意:無論「var1」,「var2」,「val1」和「val2」是什麼,該正則表達式將匹配。 EG:它將匹配:用戶名= derpa & &密碼= HERPA
和輸出將使陣列如:{derpa,HERPA}
好運。我討厭正則表達式,現在我用他們所有的時間:d
[編輯]
多個變量,這是我會怎麼做:
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
你可以只使用split()
:
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. 正則表達式[var1 :: var2]?
- 2. 在Java中使用正則表達式分割字符串
- 3. 使用正則表達式在java中分割字符串
- 4. 在java中使用正則表達式分割字符串
- 5. 在java中使用正則表達式的分割字符串
- 6. 使用正則表達式分割此字符串 - python
- 7. 如何使用正則表達式分割此字符串?
- 8. Java使用和分割字符串使用正則表達式
- 9. 正則表達式:從一個字符串中提取變量,如/ VAR1/VAR2/VAR3/
- 10. 正則表達式分割字符串
- 11. 正則表達式分割字符串
- 12. 正則表達式分割字符串
- 13. 正則表達式分割字符串
- 14. 使用正則表達式分割Java字符串
- 15. 使用自定義正則表達式分割字符串java
- 16. 分割字符串在C#中使用正則表達式
- 17. 在Python中使用正則表達式分割字符串
- 18. 在Go中使用正則表達式分割字符串
- 19. 分割字符串在C#中使用正則表達式
- 20. 在python中使用正則表達式分割字符串
- 21. 使用正則表達式在JavaScript中分割字符串
- 22. 使用正則表達式來分割字符串
- 23. 使用正則表達式從字符串中分割數字
- 24. 使用正則表達式在Ruby中分割字符串中的字符串
- 25. 在Java中使用正則表達式分割字符串模式
- 26. Java字符串分割正則表達式保留定界符
- 27. 分割字符串使用正則表達式在JavaScript
- 28. 用正則表達式在javascript中分割字符串?
- 29. Java正則表達式使用不同的分隔符分割字符串
- 30. 用正則表達式分隔符分割字符串
爲什麼你甚至需要正則表達式?如果你知道你的值不包含'&&',你可以簡單地將字符串替換爲','並加上和附加大括號。 – Viruzzo 2012-03-13 13:10:04