Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
322 views
in Technique[技术] by (71.8m points)

正则表达式转义字符

题目描述127.0.0.1为什么用[1-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}来表示,我表示看不懂这个,哪个大佬帮帮我

题目来源及自己的思路

相关代码

粘贴代码文本(请勿用截图)

你期待的结果是什么?实际看到的错误信息又是什么?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

[0-9]{1,3} 表示由 0-9 十个数字、1 - 3 位。剩下还用讲吗?

P.S. 其实这个表达式不严谨,因为 IP 只能是 0-255(首位是 1-255),而这个表达式虽然限定了位数,但没有限定最大值。正确的表达式应该是 ^((d|[1-9]d|1d{2}|2[0-4]d|25[0-5]).){3}(d|[1-9]d|1d{2}|2[0-4]d|25[0-5])$,原理见下图。

image.png


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...