1

これは私のサンプルデータです:

406/FG-2000

411/FA-2120

XX-226/2012-DFDF

OASDV-279/1016-FDFFD

Javaで正規表現(正規表現のみ)を使用して解析する方法

406/FG-2000 -> 406 (from begining to /)

411/FA-2120 -> 411 (from begining to /)

XX-226/2012-DFDF -> 226 (from - to /)

OASDV-279/1016-FDFFD -> 279 (from - to /)

これは2つのルールです。(最初から/まで)または(-から/まで)

4

2 に答える 2

4

このコードはあなたが求めたことを実行します:

input.replaceAll(".*(^|-)(.*?)/.*", "$2")

数字のみに制限する場合は、一致する正規表現を次のように変更します。".*(^|-)(\\d*?)/.*"

テストは次のとおりです。

public static void main(String[] args) {
    String[] inputs = { "406/FG-2000", "411/FA-2120", "XX-226/2012-DFDF", "OASDV-279/1016-FDFFD" };
    for (String input : inputs)
        System.out.println(input.replaceAll(".*(^|-)(.*?)/.*", "$2"));
}

出力:

406
411
226
279
于 2012-04-11T06:43:39.810 に答える
0

これを試してください:

(^|-)[0-9]+/

最初から、または-から/までの任意の数字と一致します

于 2012-04-11T06:47:30.357 に答える