1

<文字列のとの間の文字を返す正規表現をどのように作成し@ますか?

たとえば、<1001@10.2.2.1>1001 が返されます。

何かを使用して<.?>動作しますか?

4

3 に答える 3

1

次はどうですか:

(?<=<)[^@]*

例えば:

private static final Pattern REGEX_PATTERN = 
        Pattern.compile("(?<=<)[^@]*");

public static void main(String[] args) {
    String input = "<1001@10.2.2.1>";
    Matcher matcher = REGEX_PATTERN.matcher(input);
    while (matcher.find()) {
        System.out.println(matcher.group());
    }
}

出力:

1001
于 2013-08-27T18:52:32.887 に答える
0

うーん。

<([0-9]*?)@

数字だけだと思います。

すべてのキャラクターがこれを使用すると..

<(.*?)@

ここでテスト..

多分私は知識が不足していますが、正規表現についての私の理解は、キャプチャグループを取得するために () が必要だということです...そうでなければ、実際に「キャプチャ」せずに文字を選択するだけです.

したがって、この..

<.?> 

何もしません。

于 2013-08-27T18:44:50.760 に答える