パターン・マッチングのwikiマークアップタグを削除

ロドリゴ・B:

私はwikiマークアップを使用していますJiraのフィールドからユーザーの電子メールアドレスをつかむしようとしています。次のようにフィールドの内容は次のとおりです。

*User Email:* [[email protected]|mailto:[email protected]] *Tech Email:* [[email protected]|mailto:[email protected]]

私は同時に、「ユーザー」または「テックのメールの電子メール、どちらか一方にマッチする正規表現を作成する必要があります。私は、特にそれに一致する正規表現を作成することができませんよ。私は基本的な実装は、JavaのPatternクラスに基づいて、マッチを見つけるために、Matcher.find()を使用しているというツールを使用しています。

イリヤ・ルイセンコ:

のみ、ユーザーの電子メールに一致するように、この式を試してみてください。

(?:User\sEmail:\*\s\[)([\w\-@.]+)

それがどのように動作するかここにあなたが見ることができます:https://regexr.com/51f8s

Javaの例:

List<String> items = Arrays.asList(
        "*User Email:* [[email protected]|mailto:[email protected]]",
        "*Tech Email:* [[email protected]|mailto:[email protected]]"
);

Pattern pattern = Pattern.compile("(?:User\\sEmail:\\*\\s\\[)([\\w\\-@.]+)");
for (String item : items) {
    Matcher matcher = pattern.matcher(item);

    if (matcher.find()) {
        System.out.println("email: " + matcher.group(1));
    }
}

出力:

email: [email protected]

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=378946&siteId=1