Java 正则表达式

来源:互联网 发布:网络造谣怎样算违法 编辑:程序博客网 时间:2024/06/05 12:06

正则表达式

常用正则表达式:

“^\d+$”  //非负整数(正整数 + 0)

“^[0-9][1-9][0-9]$”  //正整数

“^((-\d+)|(0+))$”  //非正整数(负整数 + 0)

“^-[0-9][1-9][0-9]$”  //负整数

“^-?\d+$”    //整数

“^\d+(.\d+)?$”  //非负浮点数(正浮点数 + 0)

“^(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9]))$”  //正浮点数

“^((-\d+(.\d+)?)|(0+(.0+)?))$”  //非正浮点数(负浮点数 + 0)

“^(-(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9])))$”  //负浮点数

“^(-?\d+)(.\d+)?$”  //浮点数

“^[A-Za-z]+$”  //由26个英文字母组成的字符串

“^[A-Z]+$”  //由26个英文字母的大写组成的字符串

“^[a-z]+$”  //由26个英文字母的小写组成的字符串

“^[A-Za-z0-9]+$”  //由数字和26个英文字母组成的字符串

“^\w+$”  //由数字、26个英文字母或者下划线组成的字符串

“^[\w-]+(.[\w-]+)*@[\w-]+(.[\w-]+)+$”    //email地址

“^[a-zA-z]+://(\w+(-\w+))(.(\w+(-\w+)))(\?\S)?$”  //url

最简单的用法:

Pattern pattern =Pattern.complile(patternString);Matcher matcher = pattern.matcher(input);while (matcher.find()){    int start = matcher.start();        int end = matcher.end();    String match = input.substring(start,end);}
package com.xb.Regex;import java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern;/** *  * @author wyb * */public class RegexTest {        public static void main(String args[]){            Scanner in = new Scanner(System.in);            System.out.println("Enter pattern:");            String patternString= in.nextLine();            Pattern pattern = Pattern.compile(patternString);             while(true){                 System.out.println("Enter string to match:");                 String input = in.nextLine();                 if (input == null ||  input.equals("")) {                    return;                }                Matcher matcher=pattern.matcher(input);                while(matcher.find()){                    int start = matcher.start();                    int end = matcher.end();                    String match = input.substring(start,end);                    System.out.println(match);                }             }            }}
0 0