単純な正規表現を機能させることができません。現在、次のJavaコードがあります。
String regex = "^([^A-Za-z]*?[A-Z][A-Za-z]*?)+.?";
String string = "AQUA, CETEARYL ALCOHOL, CETYL ESTERS, BEHENTRIMONIUM CHLORIDE, CETRIMONIUM CHLORIDE, AMODIMETHICONE, TRIDECETH-12, PARFUM, METHYLPARABEN, HEXYL CINNAMAL, LINALOOL, BENZYL SALICYLATE, LIMONENE, LAMINARIA DIGITATA, CHAMOMILLA RECUTITA , ANICOZANTHOS FLAVIDUS, SODIUM BENZ0ATE, PHENOXYETHANOL, ETHYLPARABEN, BUTYLPARABEN, PROPYLPARABEN, P0LYS0RBATE 20, CI 19140, CI 14700.";
System.out.println(string.matches(regex));
問題は、実行が決して終了しないことです。私の正規表現は、私がどのように失敗するかを確認するためにのみ使用してください。必要なものは私には単純に聞こえます:-任意のテキストがあります。-このテキストのすべての単語は大文字である必要があります。-単一文字がある場合は、それらも大文字にする必要があります。-(数字、コンマ、...)の間は常に一致する必要があります。上記の複雑なサンプルを参照してください。シンプルなのは:
テスト、テスト、テスト= true テスト、テスト、テスト= false テスト、7-テストテスト、テスト= true テスト、7-テストテスト、テスト= false na = false NA = true N / A = true フェノキシエタノール、P0LYS0RBATE 20、CI 19140、CI14700。= true
どうもありがとう!!!