簡體   English   中英

如何將Java Lambda表達式用於正則表達式

[英]How to use Java lambda Expressions for regular expressions

在下面的代碼中,我從列表中獲取所有元素,並在"("之后分割文本。

for (WebElement element : measureKeys) {
    String[] measure = element.getText().split("\\(");
    testing.add(measure[0])
}

如何為上述代碼使用Lambda

您基本上可以將循環的主體轉換為lambda表達式並收集結果

List<String> testing = 
    measureKeys.stream()
               .map(e -> element.getText().split("\\(")[0])
               .collect(Collectors.toList());

另一種選擇是

List<String> list= Pattern.compile("\\(")
                      .splitAsStream(measureKeys)
                      .collect(Collectors.toList());
    List<String> measureKeys = new ArrayList<>();
    List<String> a = new ArrayList<>();
    measureKeys.forEach(element -> a.add(element.split("\\(")[0]));

那是你的願望嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM