python 如何找到方括号中的数字,后面跟一个字符串?[已关闭]

ymdaylpp  于 2023-01-01  发布在  Python
关注(0)|答案(2)|浏览(116)

**已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
昨天关门了。
Improve this question
我正在尝试获取前面有字符串的方括号中的数字。搜索应该基于电话号码,而不是第一个[]方括号。

mystring = 'my name is raj and my phoneNumber [12343567890] , pincode[123]'
expected=1234567890

我尝试了以下方法,但无法获取正确的值

re.search(r'^phoneNumber \[\s*\+?(-?\d+)\s*\]', mystring ).group(0)

有人能帮我解开密码吗?

k97glaaz

k97glaaz1#

您可以使用这个答案[1]并将字符串phoneNumber添加到正则表达式中:

import re

s = "my name is raj and my phoneNumber [12343567890] , pincode[123]"
m = re.search(r"phoneNumber \[([A-Za-z0-9_]+)\]", s) 
print(m.group(1))

[1][Get the string within brackets in Python](https://stackoverflow.com/questions/8569201/get-the-string-within-brackets-in-python)

raogr8fs

raogr8fs2#

我正在尝试获取前面有字符串的方括号中的数字。
尝试以下方法(无正则表达式)

mystring = 'my name is raj and my phoneNumber [12343567890] , pincode[123]'
left = mystring.find('[')
right = mystring.find(']')
num = mystring[left + 1:right]
print(num)

输出

12343567890

相关问题