2024-10-06 07:11:24 发布
网友
与其尝试搜索150,00、200,00、250,00300,00或{},1.100,00是否可以与例如xxx,xx €和{}进行比较而不考虑数字?在
150,00
200,00
250,00
300,00
1.100,00
xxx,xx €
我从eLRuL得到的代码运行得很好,但它也给出了xx,xx格式。我只想要xxx,xx和x.xxx,xx,而且我还想在末尾加上欧元符号,所以它应该包括xxx,xx欧元和x.xxx,xx€。在
if re.search(r'\d+\.?\d+,?\d+', item['Value']):
您可以使用regex:
regex
import re ... if re.search(r'\d+\.?\d+,?\d+', item['Value']):
是的,有一种方法,你已经标记了它:“regex”(正则表达式)。在Python中,可以使用re模块或regex模块。在
首先,您必须创建模式,在您的情况下:
import re number = str(<what_you_want_to_search>) #for example 1,000.00 or 100.00 pat = r'(\d,)?\d{3}\.\d{2}' #pattern for xxx.xx and x,xxx.xx numbers result = re.search(pat, number) if result: print result.string
在搜索如果表达式不匹配,则返回None;如果存在匹配,则返回对象。然后可以打印出与模式匹配的字符串。在
我强烈建议您阅读该包的文档,以确切了解如何创建自己的regex。在
编辑:
就像你说的,r'\d+模式。?\d+,?\d+'正在工作,但与xx、xx也匹配。你必须更加具体:
pat=r'(\d,)?\d{3}.\d{2}'
这个模式匹配
所以这个图案和x吻合,xxx.xx号或者xxx.xx号你一开始想表达什么。在
如果你想与欧元符号(€)匹配,你就必须add手动将Sc中的字符转换为你的模式。在
您可以使用
regex
:是的,有一种方法,你已经标记了它:“regex”(正则表达式)。在Python中,可以使用re模块或regex模块。在
首先,您必须创建模式,在您的情况下:
在搜索如果表达式不匹配,则返回None;如果存在匹配,则返回对象。然后可以打印出与模式匹配的字符串。在
我强烈建议您阅读该包的文档,以确切了解如何创建自己的regex。在
编辑:
就像你说的,r'\d+模式。?\d+,?\d+'正在工作,但与xx、xx也匹配。你必须更加具体:
pat=r'(\d,)?\d{3}.\d{2}'
这个模式匹配
所以这个图案和x吻合,xxx.xx号或者xxx.xx号你一开始想表达什么。在
如果你想与欧元符号(€)匹配,你就必须add手动将Sc中的字符转换为你的模式。在
相关问题 更多 >
编程相关推荐