メールを抽出し、パターン (EMAIL_PATTERN) を使用してスペースに置き換えようとしています。以下を実行すると、ドキュメント全体が渡されても出力は生成されません。パターンはリージョン全体のみに一致します。つまり、電子メールのみを渡すと、電子メールが一致し、スペースに置き換えられます。ただし、次の方法の目的は電子メールを見つけることであり、以前の手動の抽出は必要ありません。tempString の email を差し替えた後、次のパターンに使用したいと思います。使用したいパターンを 1 つのメソッドで結合する必要がありますか、それとも別のメソッドに配置する必要がありますか? 以下は、私が今持っているコードです。また、他のパターンもありますが、私の方法が正しく機能していないため、まだ投稿していません。
private static final String EMAIL_PATTERN = "[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})";
public static void main (String[] args) {
//Document takes in a ID, student information(which includes email, address, phone, name), school, and text
Document r = new Document("", "FirstName LastName, Address, example@email.com, phoneNumber", "School", "experience", "text");
personalEmailZone(r);
}
public static Document personalEmailZone(Document doc){
//tempString is the personal information section of a resume
String tempPI = doc.tempString();
if(doc.tempString().matches(EMAIL_PATTERN) == true){
//Pattern pattern = Pattern.compile("");
Pattern pattern = Pattern.compile(EMAIL_PATTERN);
Matcher matcher = pattern.matcher(tempPI);
String emailTemp = "";
if(matcher.find()){
emailTemp = matcher.group();
System.out.println(emailTemp);
//PI.replace(emailTemp, "");
System.out.println(emailTemp.replace(emailTemp, ""));
tempPI = tempPI.replace(emailTemp, "");
System.out.println(tempPI);
}
}
return doc;
}