正则表达式只匹配一次(正则表达式只出现一次)
http://www.itjxue.com 2023-02-24 03:42 来源:未知 点击次数:
如何让正则表达式只匹配一次中文字符?
可以参考下下面的代码,希望能帮到你:
String s = new String("大大大大大大");
Pattern pattern = Pattern.compile("^!\\p{ACSII}");//只匹配一个中文字符
Matcher matcher = pattern.matcher();
while(matcher.find()){
System.out.println(matcher.group());
}
正则表达式如何只匹配一个
你用的是贪婪匹配.*,就是尽可能多的长的去匹配
应该用非贪婪匹配.*?,就是尽可能少的短的去匹配
另外,你用的eregi函数,php5.3x后已不再支持,换成了preg_match和preg_match_all函数
我给你一个完整的PHP匹配程序,你看看吧
?php?
$str?=?"abc123abc123abc123";
preg_match_all("/a(.*?)3/",$str,$strs);
print_r?($strs[1]);
?
正则表达式 只能出现一次或0次
这个正则表达式是不会接受个位数的,它只接受两位以上的数。
[1-9]这个必须要一个1-9的数
[0-9]*这个代表0-9中的数出现一次或N次
[.]?这个不只是代表一个点了,也可以是其他(中文或者英文或者数字),并且只能出现一个或0个
[1-9]+这里就代表1-9中必须出现至少一次
所以综上2是不接受的。可以匹配的如下例子:
101254.12458
101254.12
11
1.25
1b1264
正则表达式如何只匹配一个P标签?
你好,可以用下面的格式
/^(?!.*(xxx).*\1).*$/
这个xxx是你只希望匹配一次的格式。
.*(xxx).*\1 表示允许xxx重复
?! 表示断言不包含,不占用字符串长度
(?!.*(xxx).*\1) 表示断言不允许xxx重复
(责任编辑:IT教学网)
下一篇:没有了