Java 正则表达式

正则表达式

常用正则表达式:

“^\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);
                }
             }
            }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值