不确定正则表达式的含义

2024-10-01 11:37:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个验证用户输入的程序。其中一个检查是符号,如果符号后面至少有一个数字,则唯一允许的符号是小数点。我为此使用了正则表达式,据我测试,它们工作正常。它首先检查输入中的任何符号,然后检查格式是否为任意数字(包括无数字),后跟一个小数位,后跟至少一个数字。然而,几个月前我写了下面的代码,现在我正试图写这个程序,我正在努力找到正则表达式的确切解释,这就是我需要帮助的地方。你知道吗

regex1 = re.compile(r'(?![a-zA-Z0-9])[!-~]')
regex2 = re.compile(r'^\d*\.\d+?$')

if regex1.search(value):
   if regex2.search(value) == None:
      <value does not pass>

Tags: 代码用户程序researchifvalue格式
1条回答
网友
1楼 · 发布于 2024-10-01 11:37:40

免责声明:我仍在学习正则表达式,所以请原谅我,我会尽我所知解释

首先,你将在这个python re中找到你需要的一切,为了练习你应该尝试how to

下面是一些模式的快速解释

正则表达式1=重新编译(r’(?)?![a-zA-Z0-9])[!-~]') 正则表达式2=重新编译(r'^\d*.*.\d+?$')

(?!...) Matches if ... doesn’t match next. This is a negative lookahead assertion. For example, Isaac (?!Asimov) will match 'Isaac ' only if it’s not followed by 'Asimov'.

[!-~]匹配单个字符,即任何一个!,-,~

'^\d*\.\d+?$'有一些符号,如^=文本开头的搜索,\d=数字0-9,*,+=乘法器,?=非贪婪搜索,\.=简单点

相关问题 更多 >