需要字母和数字 - regEx

2024-03-30

我试图弄清楚如何只需要字母和数字而不需要任何其他字符。所以从字面上看[a-z] and ( \d or [0-9])取决于对数字执行此操作的更好方法。

因此,如果我有一个需要验证的字符串:

$toValidate = 'Q23AS9D0APQQ2'; // It may start with letter or number, both cases possible.

然后如果我对其进行验证:

return /([a-z].*[0-9])|([0-9].*[a-z])/i.test($toValidate);

我用了一个i在这里标记,因为用户可能输入小写或大写,这是用户偏好...因此正则表达式失败...它也接受特殊字符,因此这不是所需的效果。

通过上面的验证,这也通过了:

$toValidate = 'asdas12312...1231@asda___213-1';

然后我尝试了一些疯狂的事情,我什至不知道我做了什么,所以如果有人能告诉我除了正确答案之外,我将非常感激。

return /([a-z].*\d)+$|(\d.*[a-z])+$/i.test($toValidate);

这看起来效果很好。但是当我尝试在特殊字符后继续输入字母或数字时,它仍然验证为true.

Example:

$toValidate = 'q2IasK231@!@!#_+123';

所以请帮助我理解regularExpressions更好并告诉我验证问题开头的字符串的方法是什么。字符串中预期的字母和数字。


要仅允许包含至少一个字母和至少一位数字的字母和数字,请使用:

/^(?=.*?\d)(?=.*?[a-zA-Z])[a-zA-Z\d]+$/

正则表达式细分:

^               # start of input
(?=.*?\d)       # lookahead to make sure at least one digit is there
(?=.*?[a-zA-Z]) # lookahead to make sure at least one letter is there
[a-zA-Z\d]+     # regex to match 1 or more of digit or letters
$               # end of input

正则表达式演示 https://regex101.com/r/dS0kX9/2

你不应该使用.*在你的正则表达式中,否则它将允许输入中的任何字符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

需要字母和数字 - regEx 的相关文章

随机推荐

  • Git 合并,不包括从一个分支到另一个分支的提交

    在开发过程中 我经常需要提交和推送 中间 提交 即提交代码不可编译或正在更改某些内容等 我不想进行此类提交 但这是轻松继续我的工作所必需的从办公室到家里 有时其他开发人员可以为他们提供开始工作的基础 我以为我已经找到了解决这个问题的方法 我
  • SQL 查询获取给定邮政编码 20 英里半径内的所有邮政编码(地址)

    我的查询仅匹配彼此相同的邮政编码 我需要一个查询 可以返回给定邮政编码 20 英里半径内的所有邮政编码 DECLARE cZip VARCHAR 5 SET cZip 63026 DECLARE dMin DECIMAL 20 32186
  • 如何编写参数化sql查询来防止SQL注入?

    当我尝试搜索带有主题标签的术语时 我最初发现这是一个问题 结果发现它是 SQL 中的注释分隔符 搜索没有返回任何结果 因为它忽略了主题标签后面的 term 所以现在我很难找到转义用户输入的正确方法 在我看来 这既可以解决主题标签问题 也可以
  • 需要对这个反复出现的问题有一些了解,ANR keyDispatchingTimedOut

    我有一个应用程序在一个特定组件中不断出现 ANR 但我无法弄清楚是什么占用了 cpu 时间 最近我遇到了两种 ANR 一种是本机的 另一种是等待的 DALVIK THREADS main prio 5 tid 1 NATIVE group
  • 如何获取 Mesos Agents Framework 执行器内存

    在 Mesos Web UI 内部 我可以在表中查看 Spark 执行器的内存使用情况 Agents gt Framework gt Executors 有一个表列出了我的 Spark 驱动程序的所有执行程序 它们的内存使用情况在列中指示M
  • 如何用Java读取PGM图像?

    我觉得我在这里错过了一些简单的东西 像往常一样 我正在尝试使用 Java 读取 PGM 图像 Matlab 做得很好 在 Matlab 中输出图像像素 例如 一个小的 32x32 图像 给我这样的结果 1 0 11 49 94 118 11
  • 如何在 scala 中生成案例类参数的值

    我有一个包含 250 个字段的案例类 case class Data field1 String field2 Int 有没有办法使用 scala check 为其参数生成值 我看过的不相关问题 如何使用宏为 Scala 案例类中的每个字段
  • ViewModel 中的 Thread.CurrentThread.CurrentUICulture 与 Accept-Language

    全球化 提出这个问题的原因是为了更好地理解如何Thread CurrentThread CurrentUICulture与 ViewModel 和控制器中的属性和错误消息相关的工作 我已经设置了我的项目并覆盖OnActionExecutin
  • 使用 PuTTY 的 tail -f 挂起

    我正在使用 PuTTY 命令行连接到服务器并跟踪日志文件 在本地计算机上 我创建了一个文件 tail exec 其中包含以下文本 tail f var log test log 我通过命令行启动腻子 putty ssh t pw m tai
  • MongoDB:如何进行文本搜索并按日期排序

    上下文 我有一个 MongoDB 里面有大量电子邮件 我想搜索包含以下任意字段中给定电子邮件地址的所有电子邮件 收件人 发件人 抄送 和 密件抄送 结果需要按日期字段排序 我们目前正在尝试以下查询 db collection find te
  • 行高向上舍入

    chrome 似乎将计算的值向下舍入line height 例如 line height 1 33 with font size 11px将计算出line height 14px 而确切的值是14 66所以我希望行高等于 15px 您知道是
  • AngularJS ng-value 布尔验证

    具体来说 我有两个单选按钮 它们的 ng model 值必须是布尔值 由于这对于正常的 html value 属性是不可能的 我发现有用的 Angularjs ng value 问题是当我想做一些验证时 当选择单选按钮 ng value f
  • Solr“实时”索引

    我知道有几个与此类似的问题 但它们没有为当前的问题提供简单的答案 抱歉 如果您觉得这是重复的 但我认为清晰易懂的答案将使很多人受益 那么 对于这个问题 Solr 索引更新可以自动化吗 如果可以的话 最佳方法是什么 这是一个简单的用例来澄清问
  • 使用 Powershell 将 PDF 打印为 XPS

    我想使用 Powershell 将包含 PDF 文件的文件夹转换为 XPS 文件 由于系统限制 我无法下载任何第三方软件 例如 iTextSharp 来完成此工作 我已经能够让Powershell打开文档并打开XPS的打印窗口 但名称始终为
  • 使用 javax.sound.midi 包设置乐器通道

    我在 javax sound midi 包中设置乐器时遇到问题 Synthesizer synthesizer MidiSystem getSynthesizer MidiChannel channels synthesizer getCh
  • Python setup.py 在 Egg 中包含 .json 文件

    我想将 json 文件也打包到 python Egg 文件中 例如 boto包有endpoints json文件 但是当我运行 python setup py bdist egg 时 它不包含 Egg 中的 json 文件 如何将Json文
  • greenhills 编译器关闭文件或部分文件的优化

    我发现了几个用于禁用专用代码部分的 GCC 优化的代码片段 使用编译指示 GCC 优化 0 但我找不到 Greenhils 编译器的类似内容 没有这样的选择吗 从手册 pragma ghs Ostring Turns on optimiza
  • Powershell 命令修剪以“\”结尾的路径

    如果路径结尾为 我需要修剪路径 C Ravi 我需要更改为 C Ravi 我有一个情况 路径不会以 那么它必须跳过 我尝试过 EndsWith 但是当我有时它会失败 代替 可以在 PowerShell 中完成此操作而不诉诸条件吗 考虑使用T
  • 检索 Win64 异常表中的所有条目

    从一些更清晰的理解Win64异常堆栈行走不显示条目 https stackoverflow com questions 14187450 win64 exception stack walking not displaying entrie
  • 需要字母和数字 - regEx

    我试图弄清楚如何只需要字母和数字而不需要任何其他字符 所以从字面上看 a z and d or 0 9 取决于对数字执行此操作的更好方法 因此 如果我有一个需要验证的字符串 toValidate Q23AS9D0APQQ2 It may s