博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
正则表达式-趣现象一则
阅读量:5312 次
发布时间:2019-06-14

本文共 442 字,大约阅读时间需要 1 分钟。

  昨天帮朋友解决了一个正则表达式问题,很有意思的,和大家分享一下。

  需求很简单,Web页面上一个输入月份的文本框,只能输入1~12,要求用一个RegularExpressionValidator控件进行验证。如何配置正则表达式?

  朋友的想法很直接:([1-9])|([1][0-2])。貌似没有问题,1~9的一位数字或首位为1个位为0~2的两位数,正好表示1~12。然而,这个表达式只能匹配1~9,如果输入了10~12,就会出现问题。经过N次调整也无法解决,朋友濒临崩溃……

  我的解决方法更直接:([1][0-2])|([1-9])。看到么,只是顺序变了一下,问题解决。

  个中原理就涉及到编译原理中的一些理论了,我能体会,但无法详解。仅将问题罗列在此,一是希望其他朋友遇到类似问题时能尽快解决;二是希望有高手降临,释清其中原理。

转载于:https://www.cnblogs.com/AndersLiu/archive/2006/04/22/382009.html

你可能感兴趣的文章
Competing Consumers Pattern (竞争消费者模式)
查看>>
Android面试收集录15 Android Bitmap压缩策略
查看>>
PHP魔术方法之__call与__callStatic方法
查看>>
ubuntu 安装后的配置
查看>>
【模板】对拍程序
查看>>
【转】redo与undo
查看>>
解决升级系统导致的 curl: (48) An unknown option was passed in to libcurl
查看>>
Java Session 介绍;
查看>>
spoj TBATTLE 质因数分解+二分
查看>>
Django 模型层
查看>>
dedecms讲解-arc.listview.class.php分析,列表页展示
查看>>
Extjs6 经典版 combo下拉框数据的使用及动态传参
查看>>
【NodeJS】http-server.cmd
查看>>
研磨JavaScript系列(五):奇妙的对象
查看>>
面试题2
查看>>
selenium+java iframe定位
查看>>
P2P综述
查看>>
第五章 如何使用Burp Target
查看>>
Sprint阶段测试评分总结
查看>>
sqlite3经常使用命令&语法
查看>>