1....水电费第三方第三方第三方【222】【3333】
展示的 是
【222】
【3333】
2.【3333】 水电费第三方第三方第三方【222】
展示的 是
【222】
【3333】
3.【222】【3333】 水电费第三方第三方第三方【222】【3333】
展示的 是
【222】
【3333】
类似就是这样
匹配所有的中括号及其中内容的正则表达式 【.*?】
我给你一个Java语言的例子,你看看吧
import java.util.regex.Matcher;【你好】上课的减肥了开【123123】始减肥了会计师费【你好2】
---------根据正则求的【你好】【你好2】
【你好】上课的减肥了开
-------- 根据正则求的【你好】
【你好】上课的减肥了开【123123】始减肥了会计师费【你好2】
-------- 根据正则求的【你好2】
【】 是不变量 其他为变量
正则只能根据【】取里面的内容,没法根据变化的内容,取里面的变化的内容
追问意思就是指匹配前后的【】 不匹配中间的【】
按照自己的思想先写 ^(【*.?】)|(【*.?】)$ 但是不行
只匹配头尾的【】不匹配中间的【】的正则表达式 (?m)(^【[^【】]*】)|(【[^【】]*】$)
按照你的要求只匹配头尾的【】不匹配中间的【】的Java程序如下
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class AA {
public static void main(String[] args) {
String str="【你好】上课的减肥了开【123123】始减肥了会计师费【你好2】\r\n【你好】上课的减肥了开\r\n上课的减肥了开【123123】始减肥了会计师费【你好2】\r\n";
String regex="(?m)(^【[^【】]*】)|(【[^【】]*】$)";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(str);
while(m.find()){
System.out.println(m.group());
}
}
}