次の形式で解析する文字列があり、区切り文字が続く電子メールと文字列を抽出しますJava/Scala電子メールと形式の電子メールの文字列を抽出する[区切り文字]文字列
言い換えればemail[delimiter]string
[任意のASCII文字を使用した電子メール]、[区切り文字] [任意のASCII文字の文字列]
区切り文字がすることができ、;:|または||例:
[email protected],blah
[email protected];blah1
[email protected]:blah2
[email protected]|blah,2
[email protected]||blah2
私の進捗状況、これまで以上の文字列にマッチする正規表現を追従している私はJavaで区切り文字が続いているだけで、電子メールや文字列を抽出するために、適切なグループを形成することができるように、しかし、どのように私は、この正規表現を変更することができます/ Scalaの
[email protected]+([:;,|])+.+$
Javaコードは次のようになります。
// Create a Pattern object
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(line);
if (m.find()) {
System.out.println("Email: " + m.group(0));
System.out.println("Value: " + m.group(1));
} else {
System.out.println("NO MATCH");
}
(電子メール)(何でも)のようにあなたの文字列を考えれば、最初のグループを取得するだけです –
ちょうど注 - 'グループ(0)'は完全一致です。グループ(1)とグループ(2)がほしいと思う。 –
はい、それは私が投稿した答えでやっていることです。 – codehammer