引用符を含む文字列値を取得するためにregexを使用しています。以下の例では、バリュー・サマリー・キーを「ここではサマリー」として取得したいと考えていますが、現時点では、以下のプログラムの出力として「ここです」と表示されています。 。任意の助け引用符を含む文字列を取得する正規表現
String in = "summary = \"Here is \"summary\"";
Pattern p = Pattern.compile("'(.*?)'|\"(.*?)[^\\\"]+\"");
Matcher m = p.matcher(in);
while(m.find()) {
System.out.println(m.group());
}
おかげ
使用貪欲マッチングに変更する必要があります: 'パターンp = Pattern.compile( " '(*)' | \"(*)\ "")); –
3つの '\" 'を含む間に入力を修正しますか? – MohaMad
貪欲もうまく機能します。 Wiktorに感謝します。 – AAjit