package cn.oyb.ce;
import java.util.regex.*;
public class Test2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Pattern pattern = Pattern.compile("\\d{4}\\-\\d+");
String s = "0733-4706030";
Matcher matcher = pattern.matcher(s);
if (matcher.find()) //find()方法,就像你所想象的,用来搜索与正则表达式相匹配的任何目标字符串,
{
System.out.println(matcher.group()); //group()方法,用来返回包含了所匹配文本的字符串
System.out.println(matcher.start());
}
}
}
(1)、Matcher方法
public int groupCount( )返回matcher对象中的group的数目。不包括group0。
public String group( ) 返回上次匹配操作(比方说find( ))的group 0(整个匹配)
public String group(int i)返回上次匹配操作的某个group。如果匹配成功,但是没能找到group,则返回null。
public int start(int group)返回上次匹配所找到的,group的开始位置。
public int end(int group)返回上次匹配所找到的,group的结束位置,最后一个字符的下标加一。
(2)、split() 分割,
String str = "asd.sds.sda.sssw";
String [] ss = str.split("\\.");
for(int i=0;i<ss.length;i++)
{
System.out.println(ss[i]);
}
(3)、replace(replaceAll) 替换
正则表达式在替换文本方面特别在行。下面就是一些方法:
replaceFirst(String replacement)将字符串里,第一个与模式相匹配的子串替换成replacement。
replaceAll(String replacement),将输入字符串里所有与模式相匹配的子串全部替换成replacement。
appendReplacement(StringBuffer sbuf, String replacement)对sbuf进行逐次替换,而不是像replaceFirst( )或replaceAll( )那样,只替换第一个或全部子串。这是个非常重要的方法,因为它可以调用方法来生成replacement(replaceFirst( )和replaceAll( )只允许用固定的字符串来充当replacement)。有了这个方法,你就可以编程区分group,从而实现更强大的替换功能。
String str = "asd.sds.sda.sssw";String tostrF = str.replaceFirst("\\.", "@");
String tostr = str.replace("a", "M");
String tostrA = str.replaceAll("\\.", "@");
System.out.println(tostrF);
System.out.println(tostr);
System.out.println(tostrA);
----------------------------------------------------------------------
javascript中验证用户名不能以数字开头和只能是数字、字母、下划线组成
// JS代码
function onsub(){
var username = document.getElementById("username").value;
var pp = username.match("\\w+");
if(pp==null)
{
alert("用户名必须是数字或字母下划线组成!");
return false;
}
var pp2 = username.match("\\d");
if(pp2!=null)
{
alert("用户名不能以数字开头!");
return false;
}
}
//<form>表单
<form action="" method="post" οnsubmit="return onsub();">
用户名:<input type="text" id="username" name="username" value="在这里输入">
</form>
---------------------- android培训、 java培训、期待与您交流! ----------------------