我正在尝试使用来自计算机的字符串来创建文件夹和文件名。该机器是晶圆探测器。该文件夹和文件可以存在于Windows和Linux OS上。 如何删除除+, - ,。,_之外的所有字符以及(Iron)Python中带正则表达式的所有字母数字字符?到目前为止,我得到了以下内容。但那不包含。, - 或+。
>>> re.sub(r'[\W]+', '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp300000E01'
我希望答案如下:
'LOT002_Temp3.00000E+01'
感谢任何帮助。
答案 0 :(得分:1)
您可以使用基于否定的角色类:
re.sub(r'[^\w.+-]+', '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp3.00000E+01'
[^\w.+-]
将匹配非+
,-
或.
的任何非单词字符。
答案 1 :(得分:0)
使用http://rubular.com/它们非常适合原型制作正则表达式
$ python
>>> import re
>>> re.sub(r'[^\w\+\.]+' , '', ':LOT002_Temp<3.00000E+01>')
'LOT002_Temp3.00000E+01'