正規表現の世界についての理解が不十分であることをお詫びします。正規表現を使用してテキストを分割しようとしています。これが私が今していることです。次の文字列を考慮してください
String input = "Name:\"John Adam\" languge:\"english\" Date:\" August 2011\"";
Pattern pattern = Pattern.compile(".*?\\:\\\".*?\\\"\\s*");
Matcher matcher = pattern.matcher(input);
List keyValues = new LinkedList();
while(matcher.find()){
System.out.println(matcher.group());
keyValues.add(matcher.group());
}
System.out.println(keyValues);
私が探しているのは正しい出力です。
Name:"John Adam"
languge:"english"
Date:" August 2011"
今、私はそれを少し一般的なものにするのに苦労しています。たとえば、入力文字列に別のパターンを追加した場合です。新しい値Audience:(user)を別のパターンで追加しました。つまり、 "は()に置き換えられます。
String input = "Name:\"John Adam\" languge:\"english\" Date:\" August 2011\" Audience:(user)";
このための一般的なパターンは何でしょうか?これがあまりにも足りないように聞こえたらごめんなさい。
ありがとう