Java正则表达式

来源:互联网 发布:网络作家个人简介 编辑:程序博客网 时间:2024/05/19 21:15
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
}

}


参考答案:

package com.wxh;public class Zhengze {public static int f(String s){return s.split("\\p{Punct}").length;//以运算符号分割}public static void main(String[] args){System.out.println(f("12+35*5-2*18/9-3")); //7System.out.println(f("354*12+3-14/7*6")); //6}}

正则表达式的构造摘要


构造匹配 字符x字符 x\\反斜线字符\0n带有八进制值 0 的字符 n (0 <= n <= 7)\0nn带有八进制值 0 的字符 nn (0 <= n <= 7)\0mnn带有八进制值 0 的字符 mnn(0 <= m <= 3、0 <= n <= 7)\xhh带有十六进制值 0x 的字符 hh\uhhhh带有十六进制值 0x 的字符 hhhh\t制表符 ('\u0009')\n新行(换行)符 ('\u000A')\r回车符 ('\u000D')\f换页符 ('\u000C')\a报警 (bell) 符 ('\u0007')\e转义符 ('\u001B')\cx对应于 x 的控制符 字符类[abc]abc(简单类)[^abc]任何字符,除了 abc(否定)[a-zA-Z]azAZ,两头的字母包括在内(范围)[a-d[m-p]]admp[a-dm-p](并集)[a-z&&[def]]def(交集)[a-z&&[^bc]]az,除了 bc[ad-z](减去)[a-z&&[^m-p]]az,而非 mp[a-lq-z](减去) 预定义字符类.任何字符(与行结束符可能匹配也可能不匹配)\d数字:[0-9]\D非数字: [^0-9]\s空白字符:[ \t\n\x0B\f\r]\S非空白字符:[^\s]\w单词字符:[a-zA-Z_0-9]\W非单词字符:[^\w] POSIX 字符类(仅 US-ASCII)\p{Lower}小写字母字符:[a-z]\p{Upper}大写字母字符:[A-Z]\p{ASCII}所有 ASCII:[\x00-\x7F]\p{Alpha}字母字符:[\p{Lower}\p{Upper}]\p{Digit}十进制数字:[0-9]\p{Alnum}字母数字字符:[\p{Alpha}\p{Digit}]\p{Punct}标点符号:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
2 0
原创粉丝点击