回答
試試這個:
String x= "Hello (Java)";
Matcher m = Pattern.compile("\\((.*?)\\)").matcher(x);
while(m.find()) {
System.out.println(m.group(1));
}
或
String str = "Hello (Java)";
String answer = str.substring(str.indexOf("(")+1,str.indexOf(")"));
@rupinderjeet你和給予+1的兩個人應該在寫出/支持這樣的評論之前檢查答案的日期和時間。 – aProgger
List<String> matchList = new ArrayList<String>();
Pattern regex = Pattern.compile("\\((.*?)\\)");
Matcher regexMatcher = regex.matcher("Hello This is (Java) Not (.NET)");
while (regexMatcher.find()) {//Finds Matching Pattern in String
matchList.add(regexMatcher.group(1));//Fetching Group from String
}
for(String str:matchList) {
System.out.println(str);
}
輸出
Java
.NET
\\((.+?)\\)
是什麼意思?
這正則表達式模式將從\\(
開始,因爲它是在正則表達式保留將匹配(
所以我們需要擺脫這種性格,同樣的事情\\)
和(.*?)
將在()
視爲集團而且匹配任何字符零次或更多的時間什麼我們正在尋找。
如何在Expression [「1」,「5」,「7」]中獲取字符串。結果應該是「1」,「5」和「7」。我們應該像這樣使用:'Pattern regex = Pattern.compile(「\\ [(。*?)\\]」);' – user1182217
@ user1182217您可以使用'Pattern regex = Pattern.compile(「(\」。*? \「)」);'並用matcher獲取grop 1. –
投票解釋(y) – vicky
我知道這是問3年前,但對於具有相同/相似的問題,即土地在這裏(像我一樣)的人,有什麼比使用正則表達式更簡單:
在你的榜樣,result
將作爲「Java」返回。我會推薦用於各種(相對簡單的)字符串操作的StringUtils庫;它自動處理空輸入等事情,這可以方便。
的文檔substringBetween(): https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html#substringBetween-java.lang.String-java.lang.String-java.lang.String-
還有其他兩個版本此功能,取決於打開和關閉定界符是否相同,以及分隔符(或多個)是否發生在(多個)目標字符串多次。
- 1. ( - 開大括號和之間)提取文本 - 右大括號
- 2. awk腳本 - 在括號之間提取文本
- 3. 正則表達式在括號之間提取文本與星號配對
- 4. 如何使用String.split提取方括號之間的文本
- 5. 使用awk提取一對括號之間的文本
- 6. 如何提取圓括號之間的文本?
- 7. 正則表達式在大括號之間獲取文本
- 8. php - 在括號,單引號和雙引號之間提取文本
- 9. 提取模式文本之間的文本塊
- 10. 在左括號之間查找文本
- 11. Ruby正則表達式:在引號之間提取文本
- 12. 提取文本不包含在括號
- 13. 在括號之間返回文本的正則表達式
- 14. 在記事本++中的引號之間提取文本
- 15. BASH:如何提取特定的大括號之間的文本,並讓對方
- 16. 忽略正則表達式中的括號之間的文本
- 17. 如何獲取任意數目的括號之間的文本?
- 18. 使用REGEX提取模式之間的文本
- 19. 2個括號之間刪除文本,如果兩個括號
- 20. 如何在Emacs中的引號,括號...之間選擇文本?
- 21. 使用正則表達式刪除括號之間的文本
- 22. 如何在兩個括號之間提取字符串 - 的JavaScript
- 23. 在R中的括號之間提取字符串
- 24. Javascript正則表達式 - 如何在大括號之間獲取文本
- 25. 提取「||」之間和之後的文本的正則表達式符號
- 26. Java從方括號中提取文本的正則表達式
- 27. 正則表達式提取方括號內的文本
- 28. 正則表達式與Javascript獲取兩個方括號之間的文本
- 29. 2個模式之間的提取線
- 30. 正則表達式之間返回文本()圓括號
以'indexOf'開始:http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#indexOf%28int%29 – PeterMmm
你到目前爲止嘗試過什麼?你想用嵌套括號發生什麼,例如「你好(Foo和(Bar))」?具有多個括號值的情況如何,比如「Hello(Foo)和(Bar)」? –