1、匹配双引号间内容:
public void test1() {
// 匹配双引号间内容
String pstr = "\"([^\"]+)\"";
Pattern p = Pattern.compile(pstr);
Matcher m = p.matcher("\"goodjob\"");
System.out.println(m.find() ? m.group(1) : "nothing");
// 测试中文
m = p.matcher("\"goodjob里面有中文呢\"");
System.out.println(m.find() ? m.group(1) : "nothing");
}
2、中文内容也匹配:
public void test2() {
// 中文内容也匹配
String pstr = "\"([^\"|[\u4e00-\u9fa5]]+)\"";
Pattern p = Pattern.compile(pstr);
Matcher m = p.matcher("\"goodjob里面有中文呢\"");
System.out.println(m.find() ? m.group(1) : "nothing");
// 测试标点
m = p.matcher("\"goodjob还有标点!\"");
System.out.println(m.find() ? m.group(1) : "nothing");
}
3、标点也匹配:
public void test3() {
// 标点也匹配
Pattern p = Pattern.compile("\"([^\"|[\u4e00-\u9fa5\ufe30-\uffa0]]+)\"");
Matcher m = p.matcher("\"goodjob还有标点!\"");
System.out.println(m.find() ? m.group(1) : "nothing");
}
上面三个程序的输出如下:
goodjob
nothing
goodjob里面有中文呢
nothing
goodjob还有标点!
本文通过三个具体的Java程序示例介绍了如何使用正则表达式进行字符串匹配,特别是针对包含英文、中文及标点符号的双引号内内容的匹配方法。
1029

被折叠的 条评论
为什么被折叠?



