我被正则表达式的单词边界搞糊涂了

zebds_regex zebds_regex 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
越搞越糊涂了,大家看我的几个例子,再回答一下吧,谢谢!
第一个例子:关于\b的
var str='Who are you? I\'m a boss'
var re=/a\b/g
alert(str.match(re))
// /\ba/g和/a/g这样会匹配出a,a
// /a\b/g和/\ba\b/g会匹配出a,并且这个a是BOSS前面的a
这第一个例子,我没有说错吧?

第二个例子:关于\B的
var str='你是s谁?我s是你老板'
var re=/是\B/g
alert(str.match(re))
// /\B是/g匹配的是第一个是
// /是\B/g匹配的是第二个是
这第二个例子,我也没有说错吧?

犀牛书上说,\b匹配一个单词的边界,简言之,就是位于\w和\W之间的位置,或者位于字符\w和字符串的开头或者结尾之间的位置,而\B匹配的是非单词边界。(于是我区别\b和\B的标准,就是以\W和\w为标准区分的,简单来说,就是匹配非单词的时候,必须以单词作为边界划分,我不知道这句话正确与否,有待你们的考证)

于是,可以得到结论,这个结论我是看菜鸟教程的。\b 字符的位置是非常重要的。如果它位于要匹配的字符串的开始,它在单词的开始处查找匹配项。如果它位于字符串的结尾,它在单词的结尾处查找匹配项。其实这句话我似懂非懂。

于是我按照上述的理论,做了下面的实验以验证,结果我糊涂了
var str = "abc_123中文_d3=efg汉字a";
var reg = /[\u4e00-\u9fa5]\B/g;
var arr = str.match(reg);
alert(arr)
弹出的结果是: \B的时候,匹配到'中和汉';’\b的时候匹配到'文和字'。我不是很理解为什么匹配到这个结果,求解?
当把 reg = /[\u4e00-\u9fa5]\B/g改为var reg = /\B[\u4e00-\u9fa5]\B/g的时候,弹出结果为null,按照我的理解,应该会匹配到"汉字"两个字的,所以我彻底糊涂了,求解啊
;

说白了,就是不懂单词边界的意思,有没准确又容易理解的方式?
...全文

相关推荐

40-基于89C52的量程自适应切换数字电压表设计(设计+说明+原理+仿真).rar

项目40-基于89C52的量程自适应切换数字电压表设计 资料包括Proteus仿真+Keil程序+Altium Designer原理图+软件安装包+参考设计说明书+答辩PPT+设计流程图,保证资料完整性! 功能: (1)本设计以89C52单片机为控制核心,具备高效数据处理与控制能力,可稳定驱动量程自适应切换数字电压表工作。 (2)采用ADC0808作为模数转换传感器,精准将模拟电压信号转换为数字信号,为电压测量提供准确数据基础。 (3)配备数码管显示器,清晰直观呈现测量得到的电压数值,方便用户快速读取电压信息,了解测量结果。 (4)具有自动量程切换功能,能依据输入电压大小智能调整量程,确保测量精度,拓宽电压测量范围。 (5)以待测电压输入为监测对象,资料包含原理图等,助力学生掌握量程自适应数字电压表设计要点。

创界工坊工作室

《人形机器人自适应形态学的变形覆盖建模与控制》,.zip

1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

海神之光

neo4j-community-5.26.32-unix.tar 自己编译 带neo4j-browser-2026.10.08+0.zip 解压可直接运行

neo4j-community-5.26.32-unix.tar 自己编译 带neo4j-browser-2026.10.08+0.zip 解压可直接运行

夢隨心逝

三电平ANPC并网逆变器+DPWMA调制控制+正负序分离+电网前馈控制仿真

内容概要:本资源系统性地提供了三电平ANPC并网逆变器的Simulink仿真体系,聚焦于DPWMA调制控制、正负序电流分离、电网电压前馈补偿、中点电位平衡控制以及虚拟同步发电机(VSG)等核心技术,构建了完整的构网型逆变器控制框架。内容涵盖弱电网条件下逆变器的正负序阻抗建模与稳定性分析,采用扫频法实现精确的序阻抗辨识,并集成低电压穿越(LVRT)、孤岛检测、预测电流控制等多种典型工况仿真模型。所有模块均配套参考文献与仿真文件,部分为SCI论文复现成果,兼具理论深度与工程实用性,适用于先进控制策略的研发与验证。; 适合人群:面向电力电子、新能源发电、微电网及电力系统自动化等方向的研究生、科研人员及从事并网逆变器控制算法开发的工程技术人员,要求具备扎实的电力系统基础知识和一定的Simulink建模能力。; 使用场景及目标:①支持高校与科研机构开展三电平ANPC逆变器先进控制策略的教学与研究;②服务于高水平学术论文的复现与创新性控制方法(如VSG、MPC、DPWMA)在复杂电网环境下的性能验证;③助力工程师进行并网逆变器控制系统的设计、优化与稳定性评估。; 阅读建议:建议结合所提供的参考文献与仿真模型同步学习,先掌握双闭环控制与中点电位调节的基本架构,再逐步深入正负序分离、阻抗建模与稳定判据等高阶内容,注重理论推导、参数设计与仿真实验之间的闭环验证与相互印证。

欢多天天写代码

LCL滤波三相并网逆变器仿真模型【附设计文档】

内容概要:本文提供了LCL滤波三相并网逆变器的Matlab/Simulink仿真模型及配套设计文档,系统阐述了LCL型滤波器在三相并网逆变系统中的建模方法与控制策略。内容涵盖LCL滤波器的参数设计原则、稳定性分析、有源阻尼技术、PI与准PR控制策略的应用、电流内环与电压外环的双闭环控制系统设计、SVPWM调制技术实现,以及并网系统的谐波抑制与动态响应特性分析。仿真模型完整呈现了逆变器并网全过程,结合设计文档详细说明了各模块的功能实现与参数整定流程,有助于深入理解新能源发电系统中并网逆变器的核心技术难点与工程实现路径。; 适合人群:适用于电力电子、电气工程及其自动化等相关专业的高校本科生、研究生,以及从事新能源发电、微电网、储能系统等领域的科研人员和工程技术人员;需具备电路理论、自动控制原理、电力电子技术和信号与系统等基础知识。; 使用场景及目标:①用于高校课程设计、毕业设计或实验教学中掌握三相并网逆变器的工作原理与控制方法;②支撑科研项目中对LCL滤波器设计、有源阻尼策略、并网稳定性等问题的研究与优化;③作为SCI论文复现、课题开发或工程项目前期验证的技术参考。; 阅读建议:建议结合所提供的设计文档与仿真模型同步学习,重点理解控制器参数整定逻辑、LCL参数设计约束条件及仿真波形的物理意义,建议动手调整关键参数以观察系统稳定性与动态性能的变化,从而深化对并网控制机制与工程实践要点的掌握。

抬头望远方
评论 8
收藏 已收藏
分享
返回顶部
zebds_regex
JavaScript 87,983 成员 224,681 内容