Ⅰ java中string.matcher(regex)如何指定匹配模式, 即要实现和js中的/i/m/g等等的功能
直接写在正则里,
比如:
(?i)[a-z]
等效于
[a-zA-Z]
[a-z](?i)[a-z]
等效于
[a-z][a-zA-Z]
参考:专http://beinet.cn/Blog/BlogShow.aspx?id=8fe6311d-ea7b-4e81-9fa1-465b593c82c1
第13 正则表达式属选项
Ⅱ java 如何查找匹配的字符和字符串
你可以自己写个方法的!
从返回的第一个位置开始substring,同时记住位置。
public int[] getOffset(String str,String s){
int[] arr=new int[str.length];
int j=1;
while(str.indexOf(s)!=-1){
int i=str.indexOf(s);
if(j==1){
arr[j-1]=i;
}else{
arr[j-1]=i+arr[j-2]+1;
}
String st=str.substring(i+1);
System.out.println(st);
str=st;
j++;
System.out.println("j="+j);
}
return arr;
}
public static void main(String[] args) {
String str="abcaabbddab";
StringText st=new StringText();
int[] i=st.getOffset(str, "ab");
for(int j:i){
System.out.println(j);
}
}
Ⅲ Java类库中String类的match方法用法
纠正抄下,java中用到的是matchs,不是袭match,意思为比较两个值是否相等。举例:
String str = "1111111";
String str1 = "1111111";
System.out.println(str.matches(str1));//两个输出的值相等,所以是true
String format = "yyyy-MM-dd hh:mm:ss";
String time = "2010-07-13 03:30:50";
System.out.println(time.matches(format));//比较的是值不是类型,所有是false
输出结果:
Ⅳ java 用字符串模糊匹配另一个字符串
按LS所说的确可以。要是一定要用String的话可以用
String[] s;
for(String ss:s)
if(ss.contains("贸易"))
System.out.println(ss);
这样内的方法。容
Ⅳ java 字符串与字符串数组匹配问题
for循环遍历 有就结束 返回个标志呗
String a = "aaa";
boolean flag = false;
for(String s : b){
if( a.equals( s){
flag = true;
break;
}
}
Ⅵ java正则表达式如何获取分组匹配内容
String str = "我的QQ是:456456我的电话是:0532214我的邮箱是:[email protected]";
// \d 表示0-9 任意一个数字 后面有+号 说明这个0-9单个数位出现一到多次 比如21312314
String reg = "\\d+";
//Pattern是一个正则表达式经编译后的表现模式。
Pattern pattern = Pattern.compile (reg);
// Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。
Matcher matcher = pattern.matcher (str);
//只有执行了find()方法 后,状态机matcher才是真正开始进行匹配工作的!
while (matcher.find ())
{
//matcher.group()返回匹配到的子字符串
System.out.println (matcher.group ());
}
}
Ⅶ 请问java高手,如何用String的matches()匹配只有(字母、数字、中文、半角@)的字符串啊感激不尽
packagetestDemo;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;publicclassDemo
{
publicstaticvoidmain(Stringargs[]){//按指定模式在字符串查找
Stringline="1a我@163com";Stringpattern="[a-zA-Z0-9u4E00-u9FA5@]+";
//创建Pattern对象
Patternr=Pattern.compile(pattern);//现在创建matcher对象
Matcherm=r.matcher(line);
if(m.matches()){
System.out.println("inputvlueisOK");
}else{
System.out.println("NOMATCH");
}
}
}
Ⅷ java判断一个string变量是否为十位数字,求正则表达式和代码
importjava.util.regex.Pattern;
publicclassTest{
publicstaticvoidmain(String[]args){
//匹配模式,\d代表匹配数字版,{10}代表正好权匹配次数
Stringregex="\d{10}";
System.out.println(Pattern.matches(regex,"9010000000"));
}
}