正则表达式怎么表示从a到b?

来源:百度知道 编辑:UC知道 时间:2024/09/24 02:21:39
正则表达式怎么表示从a到b的字符串?不要[a-b]这样表示从a到b中每一个元素的,要表示一个从a到b的字符串,类似"axxxxxxxxxb",ab之间不一定是什么
String s="111ba1111111a111111b1a1111bab11ab111a111b111a1111b11a";
s=s.replaceAll("[?]","ab");
System.out.print(s);
就是把字符串s中从a到b的子串都换成ab,现在好怎么写正则都是把s中的a和b全换成ab了,还是我的方法有问题?(下边三个匹配都没好使,要是有开发工具的可以试试,代码就是上边写的,能出要的结果当场放分)

大小写:^[A-Za-z]+$
大写:^[A-Z]+$
小写:^[a-z]+$
26个英文字母的正则表达式

哥们,试试我这个

import java.util.regex.*;

public class RETest {

public static void main(String[] args) {
Pattern p=Pattern.compile("a[1-9a-zA-Z]*b");
Matcher m=p.matcher("111ba1111111a111111b1a1111bab11ab111a111b111a1111b11a");
String s=m.replaceAll("ab");
System.out.println(s);
}
}

/^a.*b$/
----------------------------
用这个匹配吧
/a.*?b/
----------
用/a.*?b/匹配返回的结果是6个
a1111111a111111b
a1111b
ab
ab
a111b
a1111b
一会帮你看下,吃饭ing
-------------------------
我写的没错啊~
String s="111ba1111111a111111b1a1111bab11ab111a111b111a1111b11a";
System.out.println(s);
s=s.replaceAll("a.*?b","ab");
System.out.println(s);

output:
原字符串:111ba1111111a111111b1a1111bab11ab111a111b111a1111b11a