范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

正则表达式API技术验证与设计细化

  昨天做了个简单的技术验证,基本达到了前文设想中的效果:self.assertEqual(一个("a").表达(), r"a") self.assertEqual(最多一个("#34;).一个("_", 大小写英文, 中文).任意个("_", 大小写英文, 数字, 中文).表达(),     r"$?[_a-zA-Z一-龥][_a-zA-Z0-9一-龥]*")  self.assertEqual(不是(反斜杠, 右小括号).表达(), r"[^\)]")  self.assertEqual(     皆可(         一个(反斜杠).一个(左小括号).分组(任意个(不是(反斜杠, 右小括号))).一个(反斜杠).一个(右小括号).表达(),         一个(反引号).分组(任意个(不是(反引号))).一个(反引号).表达()         ).表达(),     r"\(([^\)]*)\)|`([^`]*)`")
  下面尝试从目标、功能、具体设计等各方面做个规划(已开源在 gitee,戳文末)。1 目标
  正则表达式(regular expression)读写不易。通过此 API 生成正则表达式,对读和写两方面进行改进。2 功能2.1 易读方面相对 ?<= 这样的符号,API 命名的语义更明确可以省去正则表达式语法相关字符需要的反斜杠明确运算优先级,比如 | 和 (?2.2 易写方面
  借助 IDE 的辅助,可看到各接口和常量,可以省去记忆各种符号。下面是安装了此插件的效果:
  2.3 潜在问题如需跨编程语言使用,需移植该 APIAPI 的表达往往比原本正则表达式冗长,需在可读与篇幅之间寻求平衡API 的命名需要尽量准确简约,如果不与正则表达式语法一一对应,使用时可能需要更多适应3 设计3.1 大致思路尽可能减少底层 API 的数量,尽量保持与正则表达式语法的一一对应。至于有些符号如 ^ ? 等等,一个有多种用处,需酌情看是否能合并到一个 API。与 1 相关,底层 API 的功能尽量简单,不包含优化或者复杂的转换。命名风格上,尽量使用两字或四字中文3.2 正则常用语法的对应 API 示例
  下面使用"规律"的缘由见此答:正则表达式是什么?abc
  一个("abc")( 规律 )
  分组(规律)规律1 | 规律2
  皆可(规律1, 规律2)^, $
  开头, 结尾规律 *
  几个(规律)规律 +
  最少一个(规律)规律 {m}
  重复(规律, m)规律 {m, n}
  重复(规律, m, n)规律 ?
  最多一个(规律)规律 *?
  最小匹配(几个(规律))规律 +?
  最小匹配(最少一个(规律))规律 {m, n}?
  最小匹配(重复(规律, m, n))[abc0-9]
  某字("abc", 数字)。这里原本也用"一个"命名,但 一个("abc") 就有了歧义(与上面第一个语法)[^abc]
  不是("abc")规律2 (?= 规律1)
  规律2.后面是(规律1)规律2 (?! 规律1)
  规律2.后面不是(规律1)(?<= 规律1) 规律2
  规律2.前面是(规律1)(?规律2.前面不是(规律1)
  欢迎意见建议。

能防水又降噪,JBLMININC让运动健身听音乐彻底摆脱了线材的束缚相信很多经常运动健身的朋友,都会喜欢一边听音乐一边进行锻炼,音乐能帮我们克服因长时间运动而产生的单调感,从而提升锻炼的效果。在运动中,佩戴一副舒适而又高质量的无线运动耳机就是最佳的小米平板5与iPadse还有三天小米平板5就发布了,采用2KLCD全面屏,搭载的是高通骁龙870旗舰处理器,目前这款平板电脑已经获得了3C认证,共有三款设备,顶配版支持5G网络,支持67W超快闪充。可以说手机一键变成电脑!真正的掌上电脑来了大家好,我是九剑。说到手机,目前基本上我们使用的手机就两种系统苹果和安卓。无论你是华为还是小米,oppo还是apple,你的手机操作界面基本都一样。然而千篇一律的界面,九剑表示我T终于!小米11系列WiFi问题解决方案出炉可免费换机近段时间,很多小米十一系列用户反应手机频繁出现黑屏发热,wif和热点失灵打不开等问题。严重的甚至连主板都烧烂。部分网友跑到雷军微博下反应该问题却反遭拉黑。小八月六号,小米官方终于正HyperXCloudII无线耳机评测突破线制,沉浸化游戏体验前言无论你是在电脑上还是在PS游戏机上玩游戏,一个高质量的电竞耳机都是必须的装备,它可以帮助你赢得更高的胜率。但是,由于有线耳机会使你的桌子变得很乱,游戏时妨碍你的操作。因此,无线Jmeter在非GUI(命令行)模式下生成测试报告根据各大招聘网站上的需求来看,熟悉Jmeter做性能测试已经几乎成为必要条件了。那么今天在这个给大家安利一波,怎么使用Jmeter在非GUI(命令行)模式下生成测试报告呢??条件准手感细腻的静音鼠标,更适合女孩使用,雷柏M650体验平时工作学习的时候,鼠标是个必不可少的小工具,即使是很多笔记本用户,通常也更习惯使用鼠标来进行各种日常操作,并且现在很多外设品牌都特别重视女性玩家使用需要,推出了不少好看好用的鼠标荣耀平板v7pro手写笔命名MagicPencil2可转轴处充电荣耀此前官宣了荣耀平板V7Pro将与Magic3系列等一起在8月12日发布,该机将首发搭载联发科最新发布的迅鲲1300T芯片。此外,该平板电脑做到了三位一体,硬件生态再升级,让创造华为荣耀Magic2还能再战?荣耀Magic2是荣耀于2018年发布的一款滑盖智能手机,售价为3799元起。该机采用了弹升式前置摄像头,100全面屏。搭载麒麟980芯片。屏幕尺寸6。39英寸,中等身材,适中大众V4。2双向蓝牙,aigoEROSAHIFI音乐播放器体验专业的HiFi播放器到底该不该配蓝牙?其实对于这个问题发烧友们一直都有争论,但对于我来说,我觉得有蓝牙肯定要比没有蓝牙更好,毕竟在日常使用当中我可以自由的选择。而我选择aigoER爆料丨苹果新专利或将消除iPhone刘海,AirPower原型机曝光刘海设计已在iPhone上使用了多年,而全面屏最理想的做法是完全消除刘海。在美国专利和商标局授予的一项名为可调节显示窗口的电子设备专利中,苹果认为它可以通过移动显示屏本身来解决这个
学习强国四人赛试题15道(47)第1题机器人身上携带的各种就相当于人的眼睛和耳朵等器官,通过它可以接收周围环境的信息。来源十万个为什么(第六版)(上海世纪出版股份有限公司少年儿童出版社2014年版)出题学习强国学5款新机遭曝光有的多次暗示,有的已经官宣做等等党真的需要一定程度的耐心,当一款新机发布之后,真的需要做出要不要换机的打算,然后有可能会觉得下一款新机会更强,那么一来一回,用户的选择也就会变得异常纠结。而从目前的市场角度来又一大厂入局折叠屏?vivo或于5月发布新机从拼参数拼堆料,再到争相入局折叠屏,手机圈内的竞争已经全面步入白热化。日前,继华为小米荣耀OPPO后,vivo也被指正研发折叠屏旗舰手机,目前已处于最后的攻坚阶段,有望于2月28日坐火车没有身份证怎么办?谢邀。现在坐火车没有身份证很好解决。现在火车票都是实名制,如果不小心忘带身份证了,那么,可以去车站的窗口来一个临时身份证明,那样就可以乘车了。这个证明我开过一次,那次是赶早上七点的我爱拼多多女生最喜欢玩的游戏是什么?购物!!!拆快递属于最快乐的时光,可以让人暂时忘记所有的烦恼。买买买最治愈。可是,对于经济能力有限,尤其是像我这样,近一年来收入水平腰斩,创收前景也不明朗非洲将建首座毫米波段射电望远镜如今,非洲和欧洲的天文学家对非洲第一座毫米波段射电望远镜即将建成的消息反应热烈。非洲毫米波段射电望远镜是一台15米单口径射电望远镜,可以接收和分析约1毫米长的无线电波,计划在纳米比好代码的味道战略篇如何写出好的代码,是一个比较宏大的命题,系列文章尝试从战略和战术两个层面进行描述。以下是正文部分编程如写作时至今日,代码最最重要的属性是作为程序员之间用于沟通和交流思想的语言。也就收入与付出不成正比,今日头条值不值得留下?单从付出与收入相比,今日头条不值得留下,我举几个例子说说收入与付出的比值(1)今日头条极速版,刷金币得收入,三万三千金币1元钱,签到,三餐吃饭,睡觉,运动走步,开宝箱,看文章,看置数字经济为冬奥会提供强大支撑来源经济日报经济日报北京2月11日讯(记者李佳霖)数字化是北京2022年冬奥会的一大特点。正是数字技术的支撑,让运动健儿的训练方案更科学,让各项赛事的实况转播更高清,让冬奥商品的支心级服务和目智能摄像头家庭贴心卫士你是否还在疑惑,为什么别人总是能捕捉到自己家萌娃或者萌宠的可爱瞬间,为什么别人家在发生危险时可以把前因后果一目了然,为什么别人可以实时跟家里人双向对话?不要急,中国移动和目C13C小米加速清仓,曲面屏骁龙870256G无线充电,从3499跌至2299元目前小米公司热度最高的应该就是红米K50电竞版,无论是雷军,还是卢伟冰在微博都不断预热了,从官方曝光的消息来看,红米K50电竞版搭载柔性DisplayMateA柔性直屏,采用高通骁