0 0

一个正则表达式的问题10

有四个字符串:
  • 1.kzbfldsf
  • 2.kzqldsf
  • 3.kybfldsf
  • 4.kyqldsf


写一个正则表达式全部可以匹配
其中k,ldsf是固定的,
第二个字母可能是z、y
第三个字符可能是bf、q

我写的表达式:
k[z|y][q|bf]ldsf 

这样只能匹配第2,4这两个,
如果写成这样
k[z|y][q|b]f?ldsf

则4个都可以匹配。

问题是,不知道为什么第一个表达式不能全匹配?
2013年9月13日 11:30

2个答案 按时间排序 按投票排序

0 0

采纳的答案

你没有理解[]的用法,你的第一个写法实际上就是
k[zy][qbf]ldsf
第二个写法实际就是
k[zy][qb]f?ldsf
第二个写法也是有问题的
比如kzyqfldsf也会被匹配上,这个正确吗?

应该用括号表达式来匹配字符串而不是一个字(如果只能匹配你写的这4种的话)
k[zy](bf|q)ldsf

[zy] 第二个字母可能是z、y
(bf|q) 第三个字符(或者串)可能是bf、q

2013年9月13日 11:42
0 0

楼上的解答有些问题
[z|y]相当于z、y和竖线(|)

2013年9月16日 11:43

相关推荐

    PB实现的正则表达式

    总的来说,"PB实现的正则表达式"是一个关于在PowerBuilder 11.5中利用自定义或第三方库实现正则表达式功能的话题。虽然存在对中文字符的支持限制,但通过学习和理解提供的代码或库,开发者依然可以提升在Power...

    正则表达式转换工具

    正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配、查找、替换等操作,涉及字符串处理的...对于编程人员来说,熟练掌握正则表达式不仅可以提高工作效率,还能解决许多复杂的问题。

    pb 使用正则表达式源码pbregexp

    在PowerBuilder中,pbregexp组件提供了一个接口,使得开发者可以方便地在PB脚本中使用正则表达式功能。这个组件可能包含以下功能: 1. **匹配**:检查输入字符串是否符合特定的正则表达式模式。 2. **查找**:在...

    VC、VC++,MFC 正则表达式类库

    在这个场景下,正则表达式是一个非常重要的工具,用于处理和分析文本数据。正则表达式类库则为VC++和MFC的开发者提供了对正则表达式功能的支持。 "VC、VC++,MFC 正则表达式类库"指的是在MFC中实现或集成的正则...

    正则表达式测试工具C#版(src)

    本项目提供了一个C#编写的正则表达式测试工具,包含完整的源代码,可以帮助开发者调试和测试他们的正则表达式,支持查找和替换功能,并能直观地显示匹配结果。 1. **C#中的正则表达式基础** - `System.Text....

    qt使用正则表达式限制lineEdit的输入,对正则表达式进行了封装,可以直接引入,工程编译正常

    通常,我们可以通过重载其`textChanged()`信号或者自定义一个槽函数来监控lineEdit的内容变化,并在其中加入正则表达式的验证逻辑。当用户输入时,如果输入不符合预设的正则表达式模式,可以及时给出反馈,比如禁用...

    正则式工具(自动生成正则表达式)

    "正则式工具(自动生成正则表达式)" 提供了一个便捷的平台,帮助用户自动化创建和测试正则表达式。这样的工具通常具有以下功能: 1. **自动生成**:用户输入示例文本或描述,工具会根据输入生成对应的正则表达式。...

    Java使用正则表达式提取XML节点内容的方法示例

    正则表达式是指一个模式串,它由一些特殊的符号和字符组成,用于描述一个字符串的模式。Java中提供了对正则表达式的支持,使得开发者可以使用正则表达式来匹配和提取字符串中的内容。 二、XML节点内容提取方法 在...

    正则表达式必知必会v_1.0.pdf

    同时,正则表达式还提供了其他方式来匹配任意字符,例如使用字符集合([xxx])来匹配某些字符中的一个字符。 元字符和转义 在正则表达式中,元字符表示在正则表达式中不代表其字面含义,而是具有特别意义的字符。...

    正则表达式大全 - 收集的最常用正则表达式

    正则表达式是一种强大的文本处理工具,用于...熟练掌握正则表达式能够提高工作效率,并帮助我们处理各种复杂的文本处理问题。然而,由于正则表达式的复杂性,有时需要根据实际情况进行调整和完善,以确保完全满足需求。

    使用正则表达式验证一年的12个月份

    在这个场景中,我们需要创建一个正则表达式来验证输入是否符合一年12个月份的格式。 首先,我们要明确一年中的12个月份的可能形式。它们可以是数字(1-12)或完整的英文月份(January到December)。如果只考虑数字...

    正则表达式在数据库查询中的应用

    这里,`REGEXP`是正则表达式的SQL谓词,`'^[ABCD].*P$'`是一个正则表达式,其中: - `^` 表示字符串的起始位置; - `[ABCD]` 匹配“A”、“B”、“C”或“D”中的任意一个字符; - `.*` 表示任意数量的任意字符; - ...

    Delphi2010正则表达式插件

    总之,“Delphi 2010正则表达式插件”是一个不可或缺的工具,它极大地扩展了Delphi的文本处理能力,让开发者在处理文本数据时更加游刃有余。结合插件提供的详尽文档和源代码,无论是新手还是经验丰富的开发者,都能...

    正则表达式验证工具,正则表达式校验工具

    3、选择排除规则,一、按正则表达式把源码中符合正则的删除;二、按正则表达式把源码中符合正则的找出;三、符合正则表达式的显示True 4、选择是否不区分大小写(RegexOptions.IgnoreCase),单行模式...

    易语言正则表达式匹配中文

    这个命令接受两个参数:一个是待检测的字符串,另一个是正则表达式模式。 对于匹配中文,我们需要了解中文字符的编码。在Unicode编码中,中文字符通常位于`U+4E00`到`U+9FFF`之间,也包括一些扩展区的汉字。因此,...

    精通正则表达式(第3版)(含awz3 mobi epub)

    随着互联网的迅速发展,几乎所有工具软件和程序语言都支持的正则表达式也变得越来越强大和易于使用。本书是讲解正则表达式的经典之作。本书主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校...

    正则表达式转NFA实现

    NFA由状态、边和接受状态组成,它可以从任意一个初始状态出发,非确定性地选择一条或多条边进行转移,直到到达接受状态,从而确定一个字符串是否匹配该正则表达式。 将正则表达式转换为NFA的过程通常包括以下步骤:...

    正则表达式自动生成器 V2.0.0.1 官方多语版

    1. **向导式界面**:对于不熟悉正则语法的用户,该工具可能提供了一个友好的向导,逐步引导用户构建复杂的正则表达式。 2. **实时预览**:用户输入正则表达式后,工具会立即在文本框中显示匹配结果,有助于快速调试...

    C语言正则表达式库

    PCRE2-10.31是该库的一个具体版本,包含了一系列头文件和库文件,使得开发者可以在自己的C程序中集成正则表达式支持。 正则表达式是一种强大的文本模式匹配工具,它能用来检查一个字符串是否符合某种预定义的模式。...

Global site tag (gtag.js) - Google Analytics