PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
RegExp
[问题] 正规表达式可以判短长度吗
楼主:
arnold0613
(凯)
2014-05-29 01:34:02
请问高手 我若限定一定要10个数字 可以用正规处理吗
作者:
LPH66
(-6.2598534e+18f)
2014-05-29 01:36:00
[0-9]{10} 不过印象中有些 regexp 不支援 {}唔, 应该要加个边界: [^0-9][0-9]{10}[^0-9]如果你是要整个字串就只有 10 个数字那可以加 ^...$就变成 ^[0-9]{10}$ 这个样子
楼主:
arnold0613
(凯)
2014-05-29 01:45:00
我是用php写 认证手机 09开头但是若输入11个数字也是正确 我想用正规一次处理
作者:
danny8376
(钓到一只猴子@_@)
2014-05-29 04:38:00
那就是楼上最后一个啦~
楼主:
arnold0613
(凯)
2014-05-29 08:49:00
因为是检验10码的手机号码^09[0-9]{8}$刚测一下好像可
作者:
filiaslayers
(司马云)
2014-05-29 12:29:00
我想问一下,如果是要找出字串中的10位数字要怎么找?就是10个数字的左右可以是任意字,但就不能是数字
作者:
KawasumiMai
(さあ、死ぬがいい)
2014-05-29 13:30:00
[^0-9]([0-9]{10})[^0-9] ?[^0-9]([0-9]{10})[^0-9] 这样?(发现问号可能会误解
作者:
filiaslayers
(司马云)
2014-05-29 15:51:00
资质不好,看不太懂楼上的语法@@把^写在[里的用意是?
作者:
KawasumiMai
(さあ、死ぬがいい)
2014-05-29 15:56:00
印象中这是exception?也就是除了0-9以外的字
作者:
filiaslayers
(司马云)
2014-05-29 16:18:00
原来^有两种意思,感谢!!
作者:
LPH66
(-6.2598534e+18f)
2014-05-29 16:19:00
是的, 不过我后来想到这只能找到真的在中间的 10 位数有些 regexp 有 lookbehind/lookahead 这样可以把边界情形抓住; 如果没有的话我记得好像也有方法做...
作者:
s25g5d4
(function(){})()
2014-05-29 16:59:00
php 有 (?=pattern) 跟 (?<=pattern)
作者:
KawasumiMai
(さあ、死ぬがいい)
2014-05-29 17:10:00
对齁...这个好像只能找中间的后来有想到用^$搭配|去辨别头尾,但好像又会卡字^|[^0-9]([0-9]{10})[^0-9]|$ 这样逻辑顺序不对(^|[^0-9])([0-9]{10})([^0-9]|$) 这样好像会卡字
作者:
mars90226
(火星人)
2014-05-29 17:15:00
最好搭配(?:) non-capture group,而且|的效能会比较差能用look ahead/look behind最好
继续阅读
[问题] 去除连续特定条件中的文字
KawasumiMai
Re: [问题] 请帮忙解一个Regex,取代子字串的问题
lin1987www
[问题] 在VB6的正则语法使用错误
markchen
Re: [问题] 请帮忙解一个Regex,取代子字串的问题
lin1987www
Re: [问题] madedit如何取代 - 包含中文Unicode
lin1987www
[问题] 请帮忙解一个Regex,取代子字串的问题
velk14
[问题] madedit如何取代
wrltertnnn
[问题] 请教mac sed里面\数量的问题
donkeychen
[问题] 不知道错误点在哪 求解
justlike5566
有人有用过平板写C语言吗
LLKUO
Links
booklink
Contact Us: admin [ a t ] ucptt.com