当前位置: 首页 > 面试题库 >

正则表达式完全匹配字符串?

邵毅
2023-03-14
问题内容

我会在开头提到这个问题,尽管我离正则表达式专家很远,但是它们对我来说并不完全陌生。对于我来说,构建正则表达式来搜索特定字符串中的模式通常不是问题,但是我有一个(也许是?)独特的情况。

我有一组价值观,例如:

028938
DEF567987
390987.456
GHI345928.039

我想匹配一组特定的字符串,例如:

  • 完全由6位数字组成的字符串
  • 字符串,由正好6位数字,十进制组成,后跟正好3位数字

在上面的示例中,第一个和第三个值应匹配。

我正在使用正则表达式:

[0-9]{6}
[0-9]{6}.[0-9]{3}

不幸的是,由于上述所有示例 均包含 指定的模式,因此所有值均匹配。这不是我的意图。

简而言之,我的问题是如何编写一个正则表达式,使其与字符串完全准确地匹配,并且在匹配模式的左右没有其他字符?是否有此类匹配的术语?(Google没有帮助。)TIA


问题答案:

使用^$匹配字符串的开头和结尾

^[0-9]{6}$
^[0-9]{6}\.[0-9]{3}$

参考:http : //www.regular-
expressions.info/anchors.html

同样,正如Mikael Svenson所指出的,\b如果您要在较大的文本块中搜索此模式,则可以使用单词边界。

参考:http :
//www.regular-expressions.info/wordboundaries.html

您也可以一次性编写这两个正则表达式

^\d{6}(\.\d{3})?$


 类似资料:
  • 我正在使用adobe javascript中的正则表达式在绘图标题栏中查找一串单词。从数字(1)开始,然后是日期,然后是不同数量的单词和4组首字母 图形标题栏示例具有以下内容: 1 20.09.16 此测试的更改 SB SB BW CR 0 29.07.16批准用于施工MM SB BW GM 正则表达式结果是 对于建筑MM SB BW GM 1 20.09.16本试验的变更 我需要正则表达式是 1

  • 问题内容: 我在尝试将我的javascript regex经验转移到Python时遇到了麻烦。 我只是想让它工作: …但是它打印无。如果我做: 它匹配…默认情况下是否匹配字符串的开头?当匹配时,如何使用结果? 我如何进行第一场比赛?是否有比python网站提供的文档更好的文档? 问题答案: 隐式添加到您的正则表达式的开头。换句话说,它仅在字符串的开头匹配。 将在所有位置重试。 一般来说,建议您在需

  • 问题内容: 我在用Python将字符串中的数字匹配时遇到麻烦。尽管应该明确匹配,但甚至不匹配 或仅匹配。我的监督在哪里? 问题答案: 阅读文档:http : //docs.python.org/2/library/re.html#re.match 如果在零个或多个字符 开头 的 字符串 您要使用(或)

  • 我正在arround制作一个与字符串的某个块匹配的正则表达式,问题是它包含许多相似的块,并且没有清楚地分开,所以我不知道如何停止正则表达式。 字符串的例子 所以我要做的是匹配并只选择第一个A1。到目前为止,我所做的是:

  • 本文向大家介绍String字符串匹配javascript 正则表达式,包括了String字符串匹配javascript 正则表达式的使用技巧和注意事项,需要的朋友参考一下 在JavaScript代码中使用正则表达式进行模式匹配经常会用到String对象和RegExp对象的一些方法,例如replace、match、search等方法,下面所述是对相关方法使用的总结,需要的朋友参考下。 String对

  • 问题内容: 我列出了大约12万个英语单词(基本上是该语言中的每个单词)。 我需要一个正则表达式,允许使用通配符aka 和来搜索这些单词。 一些例子: 如果用户搜索,它会匹配,例如或或。 如果用户搜索(以结尾的任何单词),则它将匹配或或或。 现在,大多数用户(尤其是对正则表达式不熟悉的用户)都知道,该用户只能替换1个字符,而可以替换0、1个或多个字符。我绝对想基于此构建我的搜索功能。 我的问题是:如