正则效率,\w误区

简介: <div style="margin:10px; font-family:verdana; font-size:10pt">本文首写于公司小组内部分享。</div> <div style="margin:10px; font-family:verdana; font-size:10pt"><br></div> <div style="margin:10px; font-family:v
本文首写于公司小组内部分享。

先前听导师说过正则效率不算高,就特意去看了一点相关的,做个笔记

看的时候想到了先前写过正则匹配英文邮箱,突然想到可以有中文的邮箱,遂去写了一下,遇到个坑。
\w  匹配【字母、数字、下划线、汉字】,这几乎是大众认识,但这并不准确。看下图,俄文字符都匹配出来了,查了好些资料,发现 \w 他匹配的是包括下划线的任何单词字符。类似但不等价于“[ A-Za-z0-9_ ]”,这里的"单词"字符使用Unicode字符集,包括俄文等单词如а

如果想要匹配 中文,英文字母,数字,下划线(_),该怎么办呢?
正确做法: [\u4e00-\u9fa5 _ a-zA-Z0-9]
附上自己写的英文、中文邮箱匹配实录:
或访问 CSDN 《正则表达式匹配邮箱》。
有任何问题欢迎批评指正。

目录
相关文章
|
7月前
|
数据可视化 算法 数据库
深入剖析低代码:实现24小时产品上线的技术机制与优化策略
低代码平台通过高度抽象化与预置资源,将开发周期从数月缩短至一天。其核心在于可视化开发、模块化复用、自动化流程及协作模式升级四大特点。可视化组件让界面搭建更直观;成熟功能模块减少重复开发;自动化工具替代人工操作;实时协作提升效率。此外,低代码还涵盖智能SQL引擎、图表渲染、分布式协作等技术支柱,支持跨数据库兼容、实时流处理和数据治理。通过插件生态适配多行业需求,如AI模型部署、RPA流程自动化等。最终,低代码赋能业务人员参与开发,助力企业敏捷响应市场变化,同时为开发者提供更多创新空间,推动全民开发者时代的到来。
|
10月前
|
边缘计算 人工智能 5G
《元宇宙痛点求解:网络延迟与带宽限制突破指南》
元宇宙的沉浸式体验依赖于低延迟和高带宽网络,但当前网络延迟和带宽限制严重影响了用户体验,如VR游戏中的画面延迟和社交场景中的卡顿。5G、6G技术及卫星通信将大幅降低延迟并提升带宽,边缘计算与云计算的协同优化数据处理,AI智能调整传输策略,SDN等创新网络架构也将助力突破瓶颈。未来,这些技术将共同推动元宇宙实现流畅、逼真的沉浸式体验。
331 1
《元宇宙痛点求解:网络延迟与带宽限制突破指南》
|
11月前
|
机器学习/深度学习 数据采集 人工智能
GeneralDyG:南洋理工推出通用动态图异常检测方法,支持社交网络、电商和网络安全
GeneralDyG 是南洋理工大学推出的通用动态图异常检测方法,通过时间 ego-graph 采样、图神经网络和时间感知 Transformer 模块,有效应对数据多样性、动态特征捕捉和计算成本高等挑战。
332 18
GeneralDyG:南洋理工推出通用动态图异常检测方法,支持社交网络、电商和网络安全
|
机器学习/深度学习 自然语言处理 监控
深度学习之动态对抗策略
基于深度学习的动态对抗策略是为了应对不断变化的对抗环境而提出的一类方法,这些策略能够动态地调整和优化模型的防御机制,以提高深度学习模型在各种对抗攻击下的鲁棒性和安全性。
288 1
|
Java Spring
spring boot构建Stomp客户端
配置包括三部分,一个是基本的websocket客户端配置,另一个是Stomp客户端配置和会话处理
514 0
|
Rust 图形学
【unity实战】使用unity制作一个类似Rust的3D生存建造建筑系统,具有很好的吸附性(附项目源码)
【unity实战】使用unity制作一个类似Rust的3D生存建造建筑系统,具有很好的吸附性(附项目源码)
595 1
|
安全 Shell Linux
探索Linux命令chsh:更改用户的默认shell
`chsh`是Linux命令,用于更改用户的默认登录shell。它涉及用户环境配置和系统安全,允许用户选择更适合自己的shell以提升效率。命令有交互式选项和参数如`-s`来指定新shell。在使用时要注意新shell的可执行性、权限问题及选择合适的shell。例如,要更改为bash,用户可运行`chsh`后按提示操作,而root用户能用`sudo chsh -s /bin/zsh john`为用户`john`设定zsh。在更改前,确认shell路径、权限,并了解不同shell的特点。
|
机器学习/深度学习 人工智能 并行计算
从LLM中完全消除矩阵乘法,效果出奇得好,10亿参数跑在FPGA上接近大脑功耗
【6月更文挑战第15天】`Scalable MatMul-free LMs提出了一种无需矩阵乘法的新方法,使用MLGRU和MatMul-free GLU在保持性能的同时降低计算成本。实验显示,这种模型在FPGA上运行时,能效接近人脑,且在多种任务中与传统模型相当甚至更优。尽管有挑战,但该模型为高效、低功耗的语言处理开辟了新途径。[arXiv:2406.02528]`
367 1
|
数据可视化 机器人 UED
[ROS常用组件] --- rqt工具箱
[ROS常用组件] --- rqt工具箱
628 0