[英]Dataweave: Match Regex Pattern to each element of Array
我有一個數組 ["NJK","NST","NIR"] 我想迭代它並將它的每個元素與這個模式匹配 /^N.*[^1]$/ (以 N 開頭,不t 以 1) 結尾並返回 'true',即使存在這樣的情況。 如何使用 dataweave 遍歷數組?
您可以使用matches
來匹配您的 REGEX 模式。
選項 1:(如果它與您擁有的模式匹配,這將用布爾值替換該項目。)
輸入:
%dw 2.0
import * from dw::core::Arrays
var sample = ["NJK","NST","NIR"]
output application/json
---
sample map ($ matches /^N.*[^1]$/ )
輸出:
[
true,
true,
true
]
選項2:(如果您想檢查是否有任何項目matched
並且只返回一個布爾值,您可以使用some
)
輸入:
%dw 2.0
import * from dw::core::Arrays
var sample = ["NJK","NST","NIR"]
output application/json
---
sample some ($ matches /^N.*[^1]$/ )
輸出:
true
選項 3:您還可以將NOT isEmpty組合與匹配項一起使用(即: !isEmpty(<expression>)
) 。
輸入:
%dw 2.0
var sample = ["NJK","NST","NIR"]
output application/json
---
!isEmpty(sample[?($ matches /^N.*[^1]$/ )])
輸出:
true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.