1
私のプログラムで正規表現を使ってマッチングしている文字列を解析できないAndroidスタジオでこの奇妙な問題が発生しています。regex101で正しい文字列でも文字列が一致しません
private Pattern myPattern = Pattern.compile("([Request ID:]+)(\\d+)([, BY:]+)(\\d+)([ ])([A-Z\\d ]+)([ ])([amount:]+)(\\d+(\\.\\d{1,2}))");
msg = "Request ID:22, BY:123414045601 DEALER01 amount:100.00 | Request ID:41, BY:123414DEALER01 amount:100.00 | Request ID:2, BY:123414032110 DEALER MAKER5 amount:500.00";
String[] items = msg.split("\\|");
for(int i = 0; i <items.length; i++){
Matcher match = pendingPattern.matcher(items[i]);
if (!match.matches()) {
} else {
list1.add(match.group(2));
list2.add(match.group(4));
list3.add(match.group(9));
}
}
私の正規表現の一致 "リクエストID:2、BY:123414032110ディーラーMAKER5量:500.00" が、他のエントリと一致doesntの。私はすでにregex101.comでこれをチェックしており、そこにあるすべてのエントリが一致しています。
これについての洞察は非常に高く評価されます。
はどうもありがとうございました!これは私の問題を解決しました。私は白いスペースがそのような影響を持っているとは思わなかった。 – Strauss