侧边栏壁纸
博主头像
gale-blog博主等级

少年一贯快马扬帆,道阻且长不转弯,要盛大,要绚烂,要哗然,要用理想的泰坦尼克号去撞现实冰川,要当烧赤壁的风,而非借箭草船,要为了一片海,就肯翻万山

  • 累计撰写 39 篇文章
  • 累计创建 5 个标签
  • 累计收到 5 条评论

目 录CONTENT

文章目录

python正则表达

二月在这里
2024-04-10 / 0 评论 / 0 点赞 / 25 阅读 / 4208 字

python正则匹配

python常用的正则匹配的库是re使用re去匹配数据执行正则语句但是re库中的正则表达式不支持去使用扩展的正则表达

import re
pattern = r'(?<=(?<before>[^.。;;]{0,15}))'
str = u'这是一段包含计算机、电脑、笔记本和平板的文本。'
print(pattern.search(str))

这种中间添加了一些扩展表达式的正则就没有办法去匹配了

但是在python中有新增一个扩展包来支持扩展的正则表达式,regex

这个的功能就很强大

import regex as re
pattern = re.compile(r'(?<=(?<before>[^.。;;]{0,15}))(?:(?:(?<!回收商|AFC|流量|网络通讯|专业为|配套|自动|>>|货物/通用设备/)计算机(?!名|语言|键盘|插件|鼠标|服务器|体层摄影设备|及?网络(?!设备|(?:系统)?工程|[^.。:;;]{0,6}公司)|宽带|IE|[^.。:;;]{0,6}教材)|台式(?:整?机|设备)(?!键盘|鼠标)|(?:品牌|商用|(?<!驱动)[微主])机|戴尔(?:[^.。:;;]{0,2}DELL[^.。:;;]{0,2})?Optiplex|(?:惠普|HP)\\s?280\\s?G4\\s?MT|(?<![配票]|接驳|桥架、|折叠机[(])电脑(?:[平整]机)?(?![中到厨化桌线]|厚度|背板|帕灯|三维|宽带|IE|键盘|鼠标|视野计|项目评标结果|综合|存储器|横机|线孔|芯片|磨边|资讯|投影[^.。;;、]{0,4}[仪车])|(?:教[学师]|学生)(?:[用主微]|管理)?机(?!构))|(?:(?<!固定|飞利浦|半球|球形|扎把|渲染|空[气调]|屋顶|玻切|内外|装(?:订|、移)|泵送|[音变]频|(?:交互|支架|滚筒)式|[网警]报|认证|跟踪|测试仪|[壳包]装|净化|反博|评估|干燥|烘干|健康|速印|安检|节能|阅卷|技防|融合|砂轮|地理|传真|专用|电视|自[助动]|电教|白板|循环|[箔诊为乳氧烟镜焊馏烘脱洗水耕滤压草雪绣疗空铣款衣炉口讼刷膜训码线拍]|记录仪\\s*|[AV]R|触[控摸]|录播|液晶|多功能|手术|激光|(?:空[压调]机|加热|恒温|摄|考勤|光度|模具|分析仪|净水器|萃取功能的|无害|内部|测定|净化|A[34]|黑白|扫描|(?:专用|速印)纸|分解|灭菌|[打复]印|浏览|查看)[^.。:;;]{0,3})(?:[一分]体机|一体PC))|(?:(?<!皮[质面]?|宣传|工作|国航|小|书的|台的|工业级|自动|手抄[^.。:;;]{0,2})(?:笔记本|联想|Surface\\s?Pro|Think\\s?(?:pad|book)|(?:Mac|Magic|Mate|redmi)\\s?book)(?![^.。;;]{0,13}(?:软精装|\\d{1,3}本))|(?<!台的|工业级)(?:笔记本|便携式)电脑|便携式计算|超[极级]本)|(?:(?<![原为铁厂开米])(?:平板(?:设备|电脑|二合一)|(?:苹果|安卓|三星|联想|微软|超薄|华为|小米|荣耀|华硕|台电|紫光|紫光电子|中柏)平板|E人E本|平板式?(?:微型)?计算机|(?<=(?:笔记本|电脑)、)平板|(?:PC|移动营销)平板|(?<!包装|编辑|[蚕林]业|草原|超[净声]|冲光|[导血]管|电[大疗图外切刀]|非编|[肥饲]料|封片|改良|构或|馆员|[光种]子|和后|呼吸|护[林士]|换笼|[保监]护|接[警收]|康复|窥镜|[描变谱析]仪|模型|培养|清洗|染色|社区|摄[录影]|兽医|输注|体育|细胞|消[防解毒]|训练|氩气|冷冻|[药化胞]学|液体|医[生护院师]|应的|院士|愿者|蒸发|支撑|[液外内醉男妇产]科|作物|水[利土]|环[保卫]|[动视]化|(?<!数据|文件)处理|生理|器人|[服河财警]务|测定|移液|浓缩|牧场|注射|[萃提]取|微波|屏风|酶免|采[集购]|[慢刻]录|[合形]成|[检侦]查|胎监|IVF|PDA|AVC|TPS|ius|MR|NVLE|免疫|能[量源]|网络|软件|高清|[双基]层|畜牧|执法|大师|植检|取证|[水生]产|分析|并行|播出|信号|仿真|实践|卫星|切割|交流|地勤|数据|专家|中央|成像|维稳|园艺|控制|人才|录播|[坑配蔬含肥草训江焊叶树沙果音氧电诊格压个山州易话试贫]|取材|装配|手术|车间|工业|(?:麻醉|手麻|诊台|扫描|模板|[管胱内腔]镜)[^.。:;;]{0,3}|自动)工作站|图形工作|图[形像]处理(?:专用)?设备|ipad|PAD(?:[((][^()()]*?[))])?(?:及.{0,6})?(?:设备)?(?:项目)?(?:招标)?(?:询价)?采购)(?!搬运|[^.。:;;\\s]{0,2}车|吊型号|太阳能|型?集热|玻璃|[锉夯式])))(?![^等及.。,,:;;、(\\s]{0,6}(?:[刀店桌厦凳架床洗]|出席|(?<!提供[^.。:;;,,]{0,4})厂(?!家)|之间|标准耐久|保养|通过|资[格质]|(?<!及)训练|功能|USB|勘验|[保解]密|敷设|行业|原理|查阅|考试|镜像|提前|提供(?![^.。;;]{0,8}(?:授权|认证))|消防|摇头|选配|刻字|配[备置套合]|光[朿束]灯|光纤|电缆|专线|[联连]锁|数据|联网|科研|(?<!及[^.。:;;、]*)服务(?!器)|[绗行]缝|显示(?!器)|调整|辅助|印刷|断层|病毒|扫描(?!仪)|查房|热敏|编程|彩票|专用纸|修[缮复]|网[A-z\\s]*[宽卡]|音[响箱]|实验(?!设备)|按摩|[实出]现|报告|形式|汇总|学[校院]|(?<![及和])[操监数]控|请按照|充值|治疗|验光|催化|脉冲|无污迹|准备|设计|过保|满足|性能|清理|等?整合|正常|运转|轨道交通|收到|能力|控温|可以|(?<!提供[^.。:;;,,]{0,2})生产(?!厂家)|雷蛇|保证|确认|制造|CA(?![a-zA-Z])|证书|装订完整|等电子废弃|货物|管理|输[出入]|广场|中心|服务部|能?登陆|[检探]测|技能|技术(?![^.。:;;,,]{0,4}(?:有限|公司|工程))|(?<!及)课程|[进运]行|连接|插座)|[^等及.。,,:;;、(\\s]{0,12}(?:(?<!的)授权(?!书)|使用|外包|满分|(?<![及含]\\s?|、[^.。:;;,,]{0,4})虚拟|[培实]训(?!室)|(?<!(?:采购|供货)[^.。:;;,,]{0,2})安装|投标方自备|(?<!及)(?:[检保]修|运维|修理|维[保护])|(?<!软件|网络|系统)工程(?!型|[^.。:;;,,]{0,4}(?:有限|公司))|(?<!小)组成(?!员)|(?<!金?额|预算|、[^.。;;]{0,4})控制(?!金?额|预算)|得.分|硒鼓|区|设备时, 须将所需使用的)|[车不板版旁票平椅灯用包全式书双大低点端阀防放非分柜还涵截考可桥血械烤位前上要]|U盘|设备布置|支持|公厕|信用|集[群成]|断电|缺纸|开发平台|出具|软(?:硬?件|终端)|(?:电脑)?配[用件]|动漫|知识|都?具[备有]|租赁|咨询单|除尘|切纸|伺服|风扇|骨[折伤创]|眼压|检查|界面|角膜|温度|喷绘|提示|人员|起火|X[射线照光]|安[检排全]|半挂|保障|报名|备份|背包|本[地身]|编[制号码]|标准|播放|部分|材料|彩[超色]|菜单|参加|等?操作|的?开[启关]|电源|业务应急|基础|地址|被盗|视频|测[量点控试]|查[看片询]|撤销|成[图像]|程[序控]|尺寸|触摸|刺绣|打[印孔](?![器机])|单排|登记|电[磁导动极视]|动车|多[用功]|耳机|缝纫机|福利|负[载责]|钢闸|高速|工作|公文包|供货商|光束|恒温|处理|安调|遥控|损坏|消毒|故障|后才|环境|会议|火化|机器人|激光|及网络故障|和网络环境|记忆|加热|接[口入线头]|节点|科[技学](?![^.。:;;,,]{0,4}(?:有限|公司))|垃圾|类?协议|联机|链接|硫化|录[入音]|卖场|密码|模[块式拟]|排版|批发|品牌|屏[蔽风]|签到|切换|清障|日常|设定|生物|时间|实[时操]|[采租应]用|手机|数[显学字]|水分|死机|随机|抽取|胎儿|碳粉|通[信讯用]|同步|图形(?!工作站)|推车|托管|拖[把车]|网[络子](?![^.。:;;,,]{0,4}(?:有限|公司|工程))|温控|文件|无线|相关|出货|信[号息]|许可|摇号|运输|蒸汽|指标|制[图作]|质量|专[业用]|自[动行]|对?机房|加盖|售票|和?客户端|认知|构编|卡住|圆孔|硬盘|气压|水平|展示|证件|响应|生成|心肺|底柜|远程|[都现]?[不无](?:需要|光驱)|机柜|(?:\\d匹)?空调|光线|外置|背[贴膜]|转[速换]|文字|协会|在线|搬移|钥匙|协同|围挡|本安)')
str = u'这是一段包含计算机、电脑、笔记本和平板的文本。'
print(pattern.search(str))

0

评论区