Java和Javascript Regex格式用于@符号后的数字

Java and Javascript Regex format for numbers after an @ sign

本文关键字:符号 数字 用于 Javascript Regex 格式 Java      更新时间:2023-09-26

Java中的正则表达式是什么,可以捕获格式如下的字符串中@符号后的文本片段:

@+300 regex returns +300
@300 regex that should returns 300
@300.00 regex that should return 300.00
123123@300.00 should not return anything
@300.00@ should not return anything
@300.00.00 should not return anything

有点像推特上提到的用户名,但有十进制数字(正数和负数)。

试试这个:

String myString = "@123.45";
String returned = null;
Pattern p = Pattern.compile("^@([+-]?''d+(?:''.''d+)?)$");
Matcher m = p.matcher(myString);
if(m.find()) {
    returned = m.group(1);
}

试试这个:

@([+-]?'d+(?:'.'d+)?)

然后考虑第一组出局。

在Java中尝试一下,如果它有帮助,请告诉我-

    String toCheck = "@300.20";
    Pattern p = Pattern.compile("^@([+-]?''d+(?:''.''d+)?)$");
    Matcher m = p.matcher(toCheck);
    if (m.matches()){
        System.out.println(m.group(1));
    } else {
        System.out.println("Oops! didn't match");
    }

对于Javascript,这可能会有所帮助-

   var toCheck= "@300.20";
   var regex = /^@([+-]?'d+(?:'.'d+)?)$/;
   var matches = regex.exec(toCheck);
   var reqd = matches[1];