正则表达式返回的值不正确

色泽

我正在尝试使用正则表达式创建一个函数,该函数可以确定我的字符串值是否正确。true如果字符串以小写或大写字母字符或下划线开头,则应为如果以任何其他开头,则该函数必须返回false

我的测试输入是这样的: ".dasfh"

表达式,我尝试使用的表达式:[_a-zA-Z]...,[:alpha:]...,但是它们都返回true。

我还尝试了一些简单的任务:

"Hadfg"表达式在哪里[a-z]...:返回true

"hadfg"表达式在哪里[A-Z]...:返回false

有人可以帮助我了解这种行为吗?

SidOfc

您试图将字符串中的第一个字符特别匹配,这意味着您必须告诉regex,它必须是字符串中的第一个字符。

正则表达式引擎只是尝试在整个字符串中查找任何匹配项。

您所要告诉的[a-z]只是“在字符串中的任意位置找到一个小写字符”。这意味着:

"Hadfg"等于true,因为它可以找到a,d,f或g作为匹配项。"HADFG"等于false,因为没有小写字母。

例如,"hADFG"与之匹配时也会发生同样[A-Z]的情况,它将能够找到A,D,F或G作为匹配项,而"hadfg"由于没有大写字符它将返回false。

您要在这里找到的是^正则表达式,它是一种特殊的修饰符,表示“行首”

因此,当将其应用于正则表达式时,它将如下所示:/^[a-z]/
前一行的正则表达式基本上说:“从字符串的开头开始,第一个字符跟在小写字母a之后吗?”

试试看,您会看到的。

对于您的解决方案,您需要/^[_a-zA-Z]/检查第一个字符是_,az还是AZ字符。

作为参考,您可以在这些工具中找到备忘单(并使用它来测试您的正则表达式!)

  1. Regexr-我个人的最爱(使用您的浏览器JS regex引擎)
  2. Rubular -Ruby正则表达式测试器
  3. Regex101 -Python / PCRE / PHP / JavaScript

对于参考或教程(如果您想开始了解regexp及其工作方式,建议您从头到尾阅读),其中有regular-expressions.info

正则表达式从来都不是一件容易的事,要小心使用它,它是一种功能强大但有时很难处理的野兽:)

聚苯乙烯

我看到您将您的问题标记为“因此我将添加一些额外的正则表达式,以验证电子邮件地址绝对正确最低要求,我个人使用:

.+@.+\..{2,}

当分解时,它看起来像这样:

.+-任何一个或多个字符
@-后跟文字@字符
.+-任何一个或多个字符
\.-后跟文字。字符
.{2,}-任何字符中的两个或多个

可选的,你可以替换{2,}使用+,使之一个或多个但是这将允许TLD与1个字符。

要查看工作中的RFC电子邮件正则表达式,请检查此链接当我看那个正则表达式时,我基本上只是想在某个角落哭泣,肯定有些事情是我的正则表达式没有解决的,但您至少可以确保它看起来像可通过电子邮件发送的内容无论如何,如果一个新用户决定填写一些公牛,这不再是我的问题,并且我不想因为巨大的正则表达式也不同意而强迫他们更改那个1字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式匹配不正确

来自分类Dev

敲除验证正则表达式评估不正确

来自分类Dev

根据UltraEdit的语法高亮显示,Perl正则表达式看起来不正确

来自分类Dev

正则表达式javascript不正确匹配

来自分类Dev

PostgreSQL正则表达式返回多个值

来自分类Dev

正则表达式返回的值不正确

来自分类Dev

正则表达式未返回期望值

来自分类Dev

正则表达式分组不返回任何值

来自分类Dev

表达式计算不正确

来自分类Dev

正则表达式发生不正确的字符串比较

来自分类Dev

正则表达式双量词不正确匹配

来自分类Dev

正则表达式返回空值

来自分类Dev

正则表达式返回额外的空值

来自分类Dev

正则表达式匹配不正确的值

来自分类Dev

Javascript正则表达式以匹配正确的价格值

来自分类Dev

正则表达式验证不正确

来自分类Dev

正则表达式查找从开始到返回的值

来自分类Dev

如果输入的字词不正确,Python正则表达式将不匹配

来自分类Dev

正则表达式-Match.end()不正确

来自分类Dev

C ++中的正则表达式不正确

来自分类Dev

正则表达式-如何正确获取嵌套值

来自分类Dev

正则表达式错误格式不正确

来自分类Dev

Cpp:为什么下一个正则表达式匹配不正确?

来自分类Dev

为什么我的正则表达式在我的数据中不正确?

来自分类Dev

正则表达式与标点符号(包括空格)的匹配不正确

来自分类Dev

JavaScript 中的正则表达式 - 过滤不正确

来自分类Dev

匹配 URL 并返回所需值的正则表达式

来自分类Dev

sed 命令中的正则表达式不正确匹配

来自分类Dev

Python 正则表达式是正确的,但返回 None