码迷,mamicode.com
首页 > 编程语言 > 详细

java之字符串正则(下)

时间:2020-06-04 22:04:43      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:type   artifact   else   bre   form   ima   xmlns   class   set   

要求修改一个字符串

user<div>user</div><p>user</p>user<div>myuser</div>

 

String s = "user<div>javauserok</div><p>user</p>user<div>myuser</div>--<div>aa</div><div></div>";
//System.out.println(s);
//System.out.println(s.replace("user", "java"));

/*
Pattern p = Pattern.compile("[a-zA-z]{4}");
Matcher m = p.matcher(s);
while(m.find()) {
System.out.println(m.group());
}
*/

//取出每个div中的内容,并显示
//Pattern p = Pattern.compile("<div>.*?</div>"); //禁用贪婪 如果去掉?号则是贪婪
Pattern p = Pattern.compile("(<div>.*?)(user)(.*?</div>)"); //禁用贪婪 如果去掉?号则是贪婪

Matcher m = p.matcher(s);

System.out.println(s);
System.out.println(m.replaceAll("$1****$3"));

while(m.find()) {
System.out.println(m.group());
}

5、要求注册的会员姓名,要么全中文,要么全英文,不能出现特殊符号及中英混合。

[a-zA-Z]+|[\u4e00-\u9fa5]+

String n = "李";
if(n.matches("[a-zA-Z ]+|[\\u4e00-\\u9fa5]{2,4}")) {
System.out.println("正确");
}else {
System.out.println("姓名非法");
}
^开头
$ 结束
\d [0-9]
\D [^0-9]
\w [a-zA-Z0-9_]
\W
[\u4e00-\u9fa5]

替换
禁用贪婪模式
贪婪模式

词典
String w = "chinese";
w = JOptionPane.showInputDialog("请输入要翻译的内容");
String url = String.format("http://www.youdao.com/w/eng/%s/#keyform=dict2.index", w);
if(w.matches("[\u4e00-\u9fa5]+")) {
url = String.format("http://www.youdao.com/w/%s/#keyform=dict2.index", w);
}

Document doc = Jsoup.connect(url).get();
Elements es = doc.select("div[class=trans-container]");
StringBuilder result = new StringBuilder();
for(Element e : es) {
result.append(e.text());
break;
}
JOptionPane.showMessageDialog(null, result.toString());

二维码 maven 项目 pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.beiyou</groupId>
<artifactId>my</artifactId>
<version>1.0</version>
<dependencies>
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.13.1</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
<version>3.3.3</version>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
<version>3.3.3</version>
</dependency>
</dependencies>
</project>

package org;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;

public class QrTest {

public static void main(String[] args) throws WriterException, FileNotFoundException, IOException {
BitMatrix qr = new MultiFormatWriter().encode("中文效果", BarcodeFormat.QR_CODE, 200, 200);
MatrixToImageWriter.writeToStream(qr, "png", new FileOutputStream("d:/qr.png"));

}

}


package org;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.swing.JOptionPane;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;

public class Demo {

public static void main(String[] args) throws IOException, WriterException {
String w = "chinese";
w = JOptionPane.showInputDialog("请输入要翻译的内容");
String url = String.format("http://www.youdao.com/w/eng/%s/#keyform=dict2.index", w);
if(w.matches("[\u4e00-\u9fa5]+")) {
url = String.format("http://www.youdao.com/w/%s/#keyform=dict2.index", w);
}

Document doc = Jsoup.connect(url).get();
Elements es = doc.select("div[class=trans-container]");
StringBuilder result = new StringBuilder();
for(Element e : es) {
result.append(e.text());
break;
}
JOptionPane.showMessageDialog(null, result.toString());


Map h = new HashMap();
h.put(EncodeHintType.CHARACTER_SET,"utf-8");
BitMatrix dt = new MultiFormatWriter().encode(w+" : "+result.toString(), BarcodeFormat.QR_CODE, 600, 600,h);
MatrixToImageWriter.writeToStream(dt,"png",new FileOutputStream("d:/"+w+".png"));
}

}

java之字符串正则(下)

标签:type   artifact   else   bre   form   ima   xmlns   class   set   

原文地址:https://www.cnblogs.com/jinjinqiao/p/13045903.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!