正则表达式或运算

这里我有一个需求,就是有一个字段Name需要做校验
字段检验规则:名称以大小写字母或中文开头,最长为128字符,可包含数字、点号(.)、下划线(_)或连字符(-)
所以我就写了下面的正则。

(^[A-Za-z\u4e00-\u9fa5]{1}[A-Za-z0-9_\-\.\u4e00-\u9fa5]{0,127}$)|(^\s*$)

在这里插入图片描述

解释一下为什么用了或运算符,因为编辑操作的时候,这个Name字段可能置空,也就是前端传了个空字符串过来,所以要满足两种条件。如果是创建操作,那只取前面第一个表达式就ok了。其次需要注意,两个表达式用 | 连接的时候,都需要用()包出来,且 | 左右不要有空格,也就是()|()这样的形式,不要耍小聪明为了美观写成() | (),这完全是两个表达式。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
正则表达式在FPGA(Field-Programmable Gate Array)中的应用是通过硬件实现的。FPGA是一种可编程逻辑器件,它可以通过配置和重新编程来实现各种功能。正则表达式在FPGA上的实现可以用于字符串匹配、模式识别、数据过滤等应用。 在FPGA上实现正则表达式可以采用不同的方法,其中一种常见的方法是使用硬件描述语言(HDL)如Verilog或VHDL来描述正则表达式,并将其编译成硬件逻辑。这样可以将正则表达式的匹配过程转换为硬件电路的运算,从而实现高速的匹配功能。 正则表达式的匹配过程可以通过构建有限状态自动机(DFA或NFA)来实现。在FPGA上,可以使用硬件描述语言来描述和实现这些自动机,使其能够并行处理输入数据并进行匹配。 需要注意的是,FPGA的资源和性能是有限的,因此在设计正则表达式的硬件实现时需要考虑资源利用和性能优化。这包括选择合适的算法和数据结构,进行适当的并行化和优化,以及有效利用FPGA的并行计算和硬件加速能力等。 总之,FPGA可以用于实现正则表达式的硬件匹配功能,通过将正则表达式转化为硬件逻辑,实现高速且可并行处理的字符串匹配和模式识别。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [正则表达式和自动机(DFA&NFA)](https://blog.csdn.net/weixin_43541528/article/details/123790687)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RayCheungQT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值