Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何编写正则表达式确保后面没有数字_Python_Regex - Fatal编程技术网

Python 如何编写正则表达式确保后面没有数字

Python 如何编写正则表达式确保后面没有数字,python,regex,Python,Regex,我想要一个正则表达式,用x替换x**1,但有一个问题。我写了这个正则表达式: r'\b[a-z][*]{2}1[ ]?' 但它将x**10'替换为x0` 我需要一个执行此过程的正则表达式,并确保1后面没有数字,如10或100使用否定的前瞻断言: (?!…)部分是前瞻;它声明它不能在数字(\d)后面的任何位置匹配 );注意只有第二行是如何匹配的(蓝色) Python演示: >>> import re >>> pattern = re.compile(r'\b[

我想要一个正则表达式,用
x
替换
x**1
,但有一个问题。我写了这个正则表达式:

r'\b[a-z][*]{2}1[ ]?'
但它将
x**10'替换为
x0`

我需要一个执行此过程的正则表达式,并确保
1
后面没有数字,如
10
100

使用否定的前瞻断言:

(?!…)
部分是前瞻;它声明它不能在数字(
\d
)后面的任何位置匹配

);注意只有第二行是如何匹配的(蓝色)

Python演示:

>>> import re
>>> pattern = re.compile(r'\b[a-z][*]{2}1(?!\d)')
>>> pattern.search('x**1')
<_sre.SRE_Match object at 0x10869f1d0>
>>> pattern.search('x**10') is None
True
>>> pattern.search('x**10') is None
>>重新导入
>>>pattern=re.compile(r'\b[a-z][*]{2}1(?!\d))
>>>pattern.search('x**1')
>>>模式搜索('x**10')为无
真的
>>>模式搜索('x**10')为无

我不明白您希望实现什么—将实际输入与预期输出放在一起。
>>> import re
>>> pattern = re.compile(r'\b[a-z][*]{2}1(?!\d)')
>>> pattern.search('x**1')
<_sre.SRE_Match object at 0x10869f1d0>
>>> pattern.search('x**10') is None
True
>>> pattern.search('x**10') is None