java中提供了对正则表达式的支持。
有的时候,恰当地使用正则,可以让我们的工作事半功倍!
如下代码用来检验一个四则运算式中数据项的数目,请填写划线部分缺少的代码。
注意:只填写缺少代码,不要写任何多余内容,例如,已有的双引号。
public class A
{
public static int f(String s)
{
return s.split("________________").length;
}
public static void main(String[] args)
{
System.out.println(f("12+35*5-2*18/9-3")); //7
System.out.println(f("354*12+3-14/7*6")); //6
}
有的时候,恰当地使用正则,可以让我们的工作事半功倍!
如下代码用来检验一个四则运算式中数据项的数目,请填写划线部分缺少的代码。
注意:只填写缺少代码,不要写任何多余内容,例如,已有的双引号。
public class A
{
public static int f(String s)
{
return s.split("________________").length;
}
public static void main(String[] args)
{
System.out.println(f("12+35*5-2*18/9-3")); //7
System.out.println(f("354*12+3-14/7*6")); //6
}
}
之前并不知道正则表达式是啥。。
这道题
split
public String[] split(String regex)根据给定正则表达式的匹配拆分此字符串。
该方法的作用就像是使用给定的表达式和限制参数 0 来调用两参数 split 方法。因此,所得数组中不包括结尾空字符串。
例如,字符串 "boo:and:foo" 使用这些表达式可生成以下结果:
Regex 结果
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
参数:
regex - 定界正则表达式
返回:
字符串数组,它是根据给定正则表达式的匹配拆分此字符串确定的
然后空里面放的"[+-[*]/]",代表以这4个作为分割线,其中的*号是因为有其他含义吗 所以用[*]
贴一个连接:http://deerchao.net/tutorials/regex/regex.htm#repeat
split
public String[] split(String regex)
-
根据给定
正则表达式的匹配拆分此字符串。
该方法的作用就像是使用给定的表达式和限制参数 0 来调用两参数
split
方法。因此,所得数组中不包括结尾空字符串。例如,字符串 "boo:and:foo" 使用这些表达式可生成以下结果:
Regex 结果 : { "boo", "and", "foo" } o { "b", "", ":and:f" } -
-
-
参数:
-
regex
- 定界正则表达式
返回:
- 字符串数组,它是根据给定正则表达式的匹配拆分此字符串确定的
-
-
-
public class 第一题 { public static int f(String s) { return s.split("[+-[*]/]").length; } public static void main(String[] args) { System.out.println(f("12+35*5-2*18/9-3")); //7 System.out.println(f("354*12+3-14/7*6")); //6 } }
-