正则表达式仅用于标识第一个字符

时间:2014-11-05 17:40:46

标签: regex

我正在尝试识别以8或9开头的医疗诊断代码,而不考虑之后发生的情况。它们可能被格式化为800.1,956.35等。

我们的程序员开始使用[89] [0-9] [0-9] *,但这似乎是识别出8或9中的任何内容。

将搜索分开是没问题的。我尝试使用一个简单的^ [8],^ 8,^ [9],^ 9,以及所有在测试仪中找到的800(我正在使用regexpal.com)...但没有别的(它没有找到850等。)

谢谢!

1 个答案:

答案 0 :(得分:1)

也许,你已经是一个正则表达的大师,我会回答形式。

只需使用^[89]正则表达式,只匹配以89开头的字符串。

此处,^是一个锚点,它告诉正则表达式引擎在字符串的开头匹配(如果启用了multiline选项,则为行,或者在开头添加(?m)正则表达式模式)。

[89]是一个非否定的字符类,它将匹配其中的每个字符(或范围,如果提供范围)。

msrd0已提供demo