1

所以,我正在编写 Python 3 中的脚本,我需要这样的东西

control_input=input(prompt_029)
if only string_029 and int in control_input:
    #do something
else:
    #do something else

基本上,我要求具有以下条件的代码:

if control_input == "[EXACT_string_here] [ANY_integer_here]"

代码在 Python 3 中会是什么样子?

4

2 回答 2

2

你想要的是做一个正则表达式匹配。看看re 模块

>>> import re
>>> control_input="prompt_029"
>>> if re.match('^prompt_[0-9]+$',control_input):
...     print("Matches Format")
... else:
...     print("Doesn't Match Format")
... 
Matches Format

正则表达式^prompt_[0-9]+$ 匹配以下内容:

^        # The start of the string 
prompt_  # The literal string 'prompt_'
[0-9]+   # One or more digit 
$        # The end of the string 

如果数字必须包含恰好三个数字,那么您可以使用^prompt_[0-9]{3}$或 最多三个然后尝试^prompt_[0-9]{1,3}$

于 2013-03-24T16:42:11.020 回答
0

没有正则表达式

>>> myvar = raw_input("input: ")
input: string 1
>>> myvar
'string 1'
>>> string, integer = myvar.strip().split()
>>> "[EXACT_string_here] [ANY_integer_here]" == "{} {}".format(string, integer)
True
于 2013-03-24T16:45:37.500 回答