-4

重複の可能性:
URL に一致する正規表現

文字列から http 値を返す正規表現はありますか?

そう

sdfads saf as fa http://www.google.com some more text

になる

http://www.google.com

4

2 に答える 2

2

非常に単純なアプローチ:

https?://\S+

有効な URL を確認する必要がある場合、正規表現ははるかに複雑です

于 2012-06-16T16:08:37.767 に答える
0

これは、検索されたパターンを取得し、それを使用して入力全体を置き換えることを含む単純で実用的な例です。

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Regextest {

    static String[] matchThese = new String[] {
            "sdfads saf as fa http://www.google.com some more text",
            "sdfads fa http://www.dupa.com some more text",
            "should not match http://" };

    public static void main(String[] args) {

        String regex = "(https?://|www)\\S+";
        Pattern p = Pattern.compile(regex);

        System.out.println("Those that match are replaced:");
        for (String input : matchThese) {
            if (p.matcher(input).find()) {

                Matcher matcher = p.matcher(input);
                matcher.find();

                // Retrieve matching string
                String match = matcher.group();

                String output = input.replace(input, match);
                System.out.println(output);

            }
        }

    }
}
于 2012-06-16T16:37:52.563 に答える