我正在尝试使用以[&
开头的字符串获取所有匹配项,并以]
结尾(例如[&Prueba]
)。
到目前为止,我有这个表达\[&.*]
问题是,如果我有两个或更多匹配,它认为它们是一个,我的意思是例如
dsdd [&xD]s wpxxxxx.php [&dsdd]
正则表达式会抛出一个匹配项:[&xD]s wpxxxxx.php [&dsdd]
我希望得到两个结果:[&xD]
和[&dsdd]
我怎么能得到它?我尝试了几件事,但我还是没有得到它。
谢谢和问候!
答案 0 :(得分:1)
你会想做这样的事情:
\[&[^\]]+\]
这是python中的一个例子:
import re
data = "dsdd [&xD]s wpxxxxx.php [&dsdd]"
results = re.findall("\[&[^\]]+\]", data)
print (results)
['[&xD]', '[&dsdd]']
关键部分是由方括号包围的负字符类(第一个带有&符号)。匹配[,所有非],最后匹配
这是一个很好的网站,可以玩这样的东西:https://regex101.com/