regex - 匹配至少包含一个字母和至少一个数字的单词

标签 regex posix

我是正则表达式的新手,但我在过去的两天里进行了研究,并且我还在这个网站和其他网站中尝试了许多类似的查询。

我正在尝试想出一个表达式(POSIX ERE),它可以找到包含至少一个字母和至少一个数字的整个单词。具体来说,我想捕获所有这些:

B/DIN/37/1 DU/32.Abb.31 P/NA.17 O/DIN/2017/8 22/N.Abb.2

我尝试了很多方法,并在此过程中多次使我的软件崩溃,但仍然没有成功。我的问题之一是我不知道如何表达我的字符串,因此它会找到符合标准的整个单词,而不仅仅是单词中的字符串。

非常感谢任何可以帮助我的人!

最佳答案

我假设单词是用空格分隔的。在这种情况下,具有数字和字母的单词可以分为两个正则表达式:

  • 0 个或多个非空白字符,后跟一个字母,后跟 0 个或多个非空白字符,后跟一个数字,后跟 0 个或多个非空白字符
  • 同上,但数字和字母交换了。

非空白字符匹配确保捕获整个单词。

这些转化为以下正则表达式:

  • \S*[A-Za-z]\S*[0-9]\S*
  • \S*[0-9]\S*[A-Za-z]\S*

将它们组合起来会产生最终的表达式:

(\S*[A-Za-z]\S*[0-9]\S*|\S*[0-9]\S*[A-Za-z]\S* )

关于regex - 匹配至少包含一个字母和至少一个数字的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47318345/

相关文章:

javascript - 用正斜杠替换所有反斜杠

仅匹配常规有效 URL 的 PHP 正则表达式

javascript - 如何检查正则表达式是否与javascript中的整个字符串匹配?

linux - waitpid() 是做什么的?

c - 用信号处理通信

javascript - 如何让我的正则表达式只返回完全匹配

javascript - 禅编码 : ability to ascend the DOM tree using ^

c - 我应该如何在 c 中存储从 getline() 获得的第一行?

regex - 正则表达式错误

c - getpwuid() 和 stat() 的问题